SwiftUI ForEach 警告 Non-constant range: argument must be an integer literal
这个 Warning 的字面意思是「非常数范围:参数必须是整数字面量。」所以除非是常数,比如直接用「0..<4」这样的代码消除这个警告,但是大多数情况下,我们不可能去这样写,因为这部分 View 就是动态生成的。
1 |
|
查阅官方文档:
The instance only reads the initial value of the provided data and doesn’t need to identify views across updates. To compute views on demand over a dynamic range, use ForEach/init().
简单地说,这个方法只会读取提供数据的初始数,如果你不需要 View 在之后发生变化,那么可以用这个方法,
所以只要把代码改成下面这样就可以了:
1 |
|
SwiftUI ForEach 警告 Non-constant range: argument must be an integer literal
https://wonderhoi.com/2024/12/09/SwiftUI-ForEach-警告-Non-constant-range-argument-must-be-an-integer-literal/