cellForRowAtIndexPath: возвращает nil для общего прототипа ячейки

Это сводит меня с ума!

У меня есть общий класс UITableViewController с общим прототипом ячейки, с идентификатором "myCell". Разрабатывая под ARC, iOS5 и используя Storyboard, я использую следующий метод:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"myCell"];
    cell.textLabel.text = @"Title";
    return cell;
}

Все подключено в storyboard, владелец файла и т.д. В моем проекте есть еще несколько UITableViewController, использующих ту же концепцию. Все они работают. Этот конкретный класс UITableViewController не хочет работать! постоянно выбрасывает мне исключение:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'UITableView dataSource must return a cell from tableView:cellForRowAtIndexPath:'

Nslog'ed --> [tableView dequeueReusableCellWithIdentifier:@"myCell"] = (null)

Любые идеи и помощь очень ценятся!

EDIT:

For simplicity: - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 1; }

То, что я уже сделал: 1. удалил, создал и настроил UITableViewController в storyboard! 2. Перезапустил Xcode 3. Перезапустил симулятор 4. Перезапустили компьютер!!!! 5. Удалял и создавал приложение снова и снова! Ничего не помогло.

Кстати, я попробовал

if (cell == nil)
 cell = [UITableViewCell alloc] initWithStyle....

... и это решит проблему, но опять же... это ARC, storyboard, .... Я не должен этого делать. Xcode должен позаботиться об этом!

8
задан Ben Lings 4 January 2012 в 15:58
поделиться