2015-10-19 37 views
-2

我最近更新了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

回答

1

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) 

聲明docsPathimageDirPathNSString