我在 SwiftUI 视图中使用 ForEach 循环,并且收到奇怪的警告。
它工作得很好,像这样:
ForEach(0..<7) { i in
// do something
}
Run Code Online (Sandbox Code Playgroud)
然后我将 7 更改为常数:
let numberOfElements = 7
ForEach(0..<numberOfElements) { i in
// do something
}
Run Code Online (Sandbox Code Playgroud)
并收到以下警告:
非常量范围:参数必须是整数字面量
我用谷歌搜索发现以下有效的解决方案:
let numberOfElements = 7
ForEach(0..<numberOfElements, id:\.self) { i in
// do something
}
Run Code Online (Sandbox Code Playgroud)
但是,我不知道它为什么有效。为什么我必须为 ForEach 循环提供一个 ID,该 ID 有何用途?
我想更新一个在@ 3x资产之前开发的应用程序.如果我没有为每张图片添加@ 3x版本,我的应用会被拒绝吗?
我想从网上下载图像并将其设置为地图上的标记图标.下载我正在使用SDWebImage库.不幸的是,我总是得到一个错误,上面写着:
The requested URL was not found on this server.
Run Code Online (Sandbox Code Playgroud)
但URL存在.我尝试了不同的图片网址,每个人都可以在浏览器中打开,但我总是得到同样的错误.
这是我的代码:
let url=NSURL(fileURLWithPath:"http://blogs.taz.de/arabesken/files/2012/05/testbild-sendepause-300x240.jpg")
var managerCompletedBlock:(UIImage!, NSError!,SDImageCacheType,Bool) -> Void = {
image,error,cacheType,finished in
if(finished){
if let s = error.localizedDescription
{
println(s)
}
}
}
var imgManager:SDWebImageManager = SDWebImageManager.sharedManager()
imgManager.downloadWithURL(url, options: SDWebImageOptions.HighPriority, progress: nil, completed: managerCompletedBlock)
Run Code Online (Sandbox Code Playgroud)
我有互联网连接(API调用正在运行),URL存在.此外,如果我使用文件路径而不是Web URL,代码将按预期工作.
有谁知道问题是什么?