我有一些代码在最新更新之前正常工作,更新到最新版本的Xcode后我收到此错误
String.Type没有名为'stringWithContentOfURL'的成员
代码如下。
func searchFlickrForString(searchStr:String, completion:(searchString:String!, flickrPhotos:NSMutableArray!, error:NSError!)->()){
let searchURL:String = FlickrHelper.URLForSearchString(searchStr)
let queue:dispatch_queue_t = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
dispatch_async(queue, {
var error:NSError?
let searchResultString:String! = String.stringWithContentsOfURL(NSURL.URLWithString(searchURL), encoding: NSUTF8StringEncoding, error: &error)
if error != nil{
completion(searchString: searchStr, flickrPhotos: nil, error: error)
}
答案 0 :(得分:0)
几乎所有的工厂方法都被Swift初始化器所取代(如果我没记错的话,这发生在很久以前)。你想要的是:
let searchResultString:String! = String(contentsOfURL: NSURL(string: searchURL)!, encoding: NSUTF8StringEncoding, error: &error)
请注意,NSURL(string:)
会返回一个可选的NSURL
- 处理它,但您认为最好。