I have the following class:
class Event: NSObject {
var eventID :String!
var name: String!
init(name: String,eventID: String) {
self.eventID = eventID
self.name = name
}
Here in my View Im using an instance of my class
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
}
what am I doing wrong??? thanks for help
If you put your code into a Playground you will get:
An error at the line
selectedEvent.eventID = listOfEvents[indexPath.row].eventID
Because your variable selectedEvent is nill since you've declared it but not initialized it. To do it, replace the line
var selectedEvent: Event?
with
var selectedEvent = Event(name: "YourEventName", eventID: listOfEvents[indexPath.row].eventID)
as Oleg mentioned it.
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments