【问题标题】:Error after updating to Swift 2.0 [duplicate]更新到 Swift 2.0 后出错 [重复]
【发布时间】:2015-10-19 17:09:06
【问题描述】:

我最近更新了 XCode。从那时起我就犯了错误。

这是我的代码

       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' 不可用 NSURL 上的 URLByAppendingPathComponent 代替

对于变量let fullPath

使用未解析的标识符 stringByAppendingPathComponent

【问题讨论】:

    标签: ios swift


    【解决方案1】:

    stringByAppendingPathComponent(str:) 在 Swift 2.0 中从 String 中删除。它仍然适用于NSString,因此您可以像这样使用它:

    let docsPath: NSString = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)[0]
    let imageDirPath: NSString = docsPath.stringByAppendingPathComponent("SwiftDataImages")
    let fullPath = imageDirPath.stringByAppendingPathComponent(path)
    

    docsPathimageDirPath 声明为NSString

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-13
      • 2016-08-07
      • 2016-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多