我有以下课程:
class Event: NSObject {
var eventID :String!
var name: String!
init(name: String,eventID: String) {
self.eventID = eventID
self.name = name
}
这是在我使用我的类的实例的View Im中
var selectedEvent: Event?
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let indexPath = tableView.indexPathForSelectedRow!
print(listOfEvents[indexPath.row].eventID) // print my string
selectedEvent.eventID = listOfEvents[indexPath.row].eventID
print(selectedEvent.eventID) //print nil
}
我究竟做错了什么???感谢帮助
如果将代码放入Playground,您将获得:
线路错误
selectedEvent.eventID = listOfEvents[indexPath.row].eventID
因为自声明变量但未初始化它以来,变量selectedEvent为nill。为此,请更换线
var selectedEvent: Event?
和
var selectedEvent = Event(name: "YourEventName", eventID: listOfEvents[indexPath.row].eventID)
就像奥列格(Oleg)提到的那样。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句