更新到Swift 2.0后出错
问题描述:
我最近更新了XCode。从那时起我就错了。更新到Swift 2.0后出错
这里是我的代码:
public func asUIImage() -> UIImage? {
if let path = value as? String{
let docsPath = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)[0]
let imageDirPath = docsPath.stringByAppendingPathComponent("SwiftDataImages")
let fullPath = stringByAppendingPathComponent(path)
if !NSFileManager.defaultManager().fileExistsAtPath(fullPath) {
print("SwiftData Error -> Invalid image ID provided")
return nil
}
let imageAsData = NSData(contentsOfFile: fullPath)
if let imageAsData = imageAsData {
return UIImage(data: imageAsData)
}
}
return nil
}
错误:
名为let imageDirPath
变量:
stringByAppendingPathComponent”不可使用 URLByAppendingPathComponent上NSURL代替
对于变量let fullPath
悬而未决标识符stringByAppendingPathComponent
答
stringByAppendingPathComponent(str:)
的使用从String
在夫特2.0移除。它仍然是工作NSString
所以你可以使用它像这样:
let docsPath: NSString = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)[0]
let imageDirPath: NSString = docsPath.stringByAppendingPathComponent("SwiftDataImages")
let fullPath = imageDirPath.stringByAppendingPathComponent(path)
声明docsPath
和imageDirPath
为NSString
。