У меня проблемы с тем, что я могу себе представить, это очень простая проблема. Я загружая UITableViewController
класс под названием LocationViewController
от одного UIViewController
:Загрузка UITableViewController из кода
LocationViewController *lvc = [[LocationViewController alloc] init];
[self.navigationController pushViewController:lvc animated:true];
В этом классе у меня есть 3 следующий метод, реализованный:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 3;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"CityCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
cell.textLabel.text = @"Test";
return cell;
}
И я получаю следующее сообщение об ошибке:
UITableView dataSource must return a cell from tableView:cellForRowAtIndexPath:'
У меня была эта ошибка перед переходом между ViewControllers с использованием StoryBoard, потому что CellIdentifier не был c дый правильный. Я понятия не имею, что я делаю неправильно. Я пробовал загружать файл nib с помощью этого ViewController, но это вызывает ту же ошибку.
Просто, чтобы быть уверенным ... ты проверил, что это ** ** cellForRowAtIndexPath: на самом деле (и, возможно, зарегистрировал значение «cell» перед возвратом)? –