我想構建一個多層xmlparser,它顯示tableview中的數據並切換到基於選定行(最有可能是相同的viewcontroller)下一個視圖。推送tableview結果cellForRowAtIndexPath異常
我開始使用storyboard segues,但是因爲我使用的是動態單元格,我不知道如何創建多個push segue(因爲它需要推送到各種viewcontrollers)。所以我保留了故事板視圖,刪除了所有的細節並使用了下面的代碼。
終止應用程序由於未捕獲的異常 「NSInternalInconsistencyException」,原因是::
然而,當新的觀點試圖pupulate排它拋出這個異常「的UITableView數據源 必須的tableView返回一個單元格:的cellForRowAtIndexPath :」
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"index: %i", indexPath.row);
switch (indexPath.row) {
case 0:
{
DetailViewController *detailViewController = [DetailViewController alloc];
[self.navigationController pushViewController:detailViewController animated:YES];
break;
}
//...
default:
{
LayerViewController *layerViewController= [LayerViewController alloc];
[layerViewController setStartUpWithIndex:indexPath.row andLayer:layercount];
[self.navigationController pushViewController:layerViewController animated:YES];
break;
}
}
}
setStartUpWithIndex:andLayer:是我的init方法...
通過故事板賽格瑞時,即時通訊推與以下SEGUE代碼不會出現問題:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
[[segue destinationViewController] setStartUpWithIndex:indexPath.row andLayer:layercount];
}
我覺得我失去了一些東西的「SEGUE」的方法做,我需要在我的didSelectRowAtIndexPath方法作爲的cellForRowAtIndexPath包括:在視圖的第一層中工作良好。
請編輯:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"LayerCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
cell.textLabel.text = [[articles objectAtIndex:indexPath.row]objectForKey:@"HerstellerName"];
// cell.textLabel.text = @"ololol";
return cell;
}
物品陣列工作BTW
錯誤發生在tableView:cellForRowAtIndexPath:方法中,您應該顯示它的代碼。只有在選擇行0以外的行或行0或所有行時纔會出現這種情況嗎? – rdelmar
虐待我編輯我的秒 – drUniversalis