我正在跟着
a basic tutorial在Swift建立一个简单的iOS应用程序。
它是用Swift 2.x编写的,我使用XCode 8 Beta和Swift 3。
本教程建议使用NSFileManager来查找数据目录。类名已经改变了,所以自动修复的Swift 3看起来像这样:
static let DocumentsDirectory = FileManager().urlsForDirectory(.documentDirectory,inDomains:.userDomainMask).first! static let ArchiveURL = DocumentsDirectory.URLByAppendingPathComponent("meals")
不过,Xcode现在抱怨说
Value of type 'URL' has no member 'URLByAddingPathComponent'
NSURL Class Reference不包含有关如何从Swift 3解决的任何提示
>新方法名称是什么?
>我需要去哪里找到一个完整的Swift 3类的参考(或者Swift 3接口到库中定义了URL类 – 我仍然不能完全理解命名),所以我可以自己研究这些未来?
从Xcode 8 beta 4起,它被命名为
appendingPathComponent(_:)
,不会抛出。
static let archiveURL = documentsDirectory.appendingPathComponent("meals")
另外作为Leo Dabus points out in the comments,您的documentsDirectory属性将需要更改以使用beta 4中的urls(for:in:)
:
static let documentsDirectory = FileManager.default.urls(for: .documentDirectory,in: .userDomainMask)[0]
(请注意,我已经将您的属性名为lowerCamelCase,根据Swift API design guidelines.我还建议使用FileManager.default,而不是创建一个新的实例。)
您可以查看Apple’s latest API reference guide查看Swift 3中发生的API命名更改。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。