我正在尝试学习Swift并决定使用2015年发布的“Swift for Dummies”。本书中使用的示例代码适用于XCode 6.X,但我使用的是Xcode 7.2.1。
在第4章中,MasterViewController.swift中有一个configureCell代码,但它与Xcode 7.X不兼容
傻瓜有以下几点:
func configureCell(cell: UITableViewCell, atIndexPath indexPath: NSIndexPath) {
let object = self.fetchedResultsController.objectAtIndexPath(indexPath) as Event
cell.textLabel!.text = "latitude: " + object.latitude.description + " longitude: " + object.longitude.description
}
Xcode 7.X不使用indexPath,我不知道如何重新编码func。
func configureCell(cell: UITableViewCell, withObject object: NSManagedObject) {
/* I mangled the code inside the braces so I decided not to reproduce it here*/
}
提前感谢您的帮助。
我已经尽可能地记录了这个功能,现在Xcode不再报告错误。以下代码是否正确?
func configureCell(cell: UITableViewCell, withObject object: NSManagedObject) {
let objectgt = object as! Event
cell.textLabel!.text = "latitude: " + objectgt.valueForKey("latitude")!.description + " longitude: " + objectgt.valueForKey("longitude")!.description
}
答案 0 :(得分:1)
我很遗憾成为坏消息的承载者,但老实说,我认为你不应该使用这样一本过时的书。你会花很多时间学习不再有用的东西。正如上面提到的评论者所说,swift已经发生了很大变化,Xcode也是如此。如果你完成这本书,那么与使用当前工具(和当前语言)的人相比,你仍然处于极大的劣势。
我建议您尝试使用“HackingWithSwift”网站获取免费资源,以便在https://www.hackingwithswift.com [或类似的东西]开始(40个免费示例教程),然后决定如何继续。您应该使用当前工具,至少使用Swift 3.1,否则您将难以理解新代码。
最后一个想法:自从XCode6天以来,Swift变得更容易了。方法调用/参数现在更加一致且更易于使用。这将有助于使学习过程更顺畅,更愉快。