Получение ошибки при загрузке данных в WKInterfaceTable

Я создаю приложение/расширение watchKit для своего приложения. Я использую эту функцию для загрузки данных в WKInterfaceTable:

// Load table into the data
func loadTableData() {

    let sharedDefault = NSUserDefaults(suiteName: "group.com.Devpr.App")
    let numberItems = sharedDefault?.objectForKey("numberItems") as? Int

    tableView.setNumberOfRows(numberItems!, withRowType: "Cell")

    var i = 0

    let task = sharedDefault?.objectForKey("\(i)WK") as? String
    let row = tableView.rowControllerAtIndex(i) as! TableRowObject  // Get a single row object for the current item
    row.lblTblRowItem.setText(task) // Set the row text to the corresponding item
    i++ // Move onto the next item
}

Приложение падает в этой строке функции: let row = tableView.rowControllerAtIndex(i) as! TableRowObject с этой ошибкой: fatal error: unexpectedly found nil while unwrapping an Optional value. Я действительно не могу найти ничего, что было бы nil.

Изображение после сбоя: введите здесь описание изображения

Я надеюсь, что кто-то из вас может помочь мне решить эту проблему. Большое спасибо за помощь!


person horst    schedule 28.05.2015    source источник


Ответы (1)


Если numberOfItems равно 0, tableView.rowControllerAtIndex(i) может быть нулевым.

person Joe Smith    schedule 28.05.2015
comment
Нет, это не было причиной. - person horst; 29.05.2015
comment
Является ли TableRowObject классом контроллера строки таблицы для ячейки rowType? Возможно, вы захотите использовать tableView.rowControllerAtIndex(i) и посмотреть, можно ли привести его к TableRowObject. - person Joe Smith; 29.05.2015
comment
Ох. Я не установил идентификатор Cell в раскадровке. Большое спасибо за помощь! - person horst; 30.05.2015
comment
Возможно, у вас также есть решение для этого вопроса: stackoverflow.com/questions/30545847/. - person horst; 30.05.2015