1

我正在使用 xCode 4.2 来构建 iPhone 应用程序。

我不知道为什么这个语句UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];有时是空的,有时不是。我将说明两种情况,第一种情况下单元格不为空,第二种情况下为空。让我从继承 UITableViewController 的 WSCSessionTable 中两个场景共享的示例代码开始:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {
     // we have null
    }
return cell;
}

场景 1 - 单元格不为空

单元格不为空,当我像这样设置故事板时一切正常 导航控制器到 WSCSessionTable

场景 2 - 单元格为空

当我像这样设置故事板时,单元格始终为空:

通过点击按钮激活 WSCSession

这是实例化表格的按钮的事件处理程序。

- (IBAction)goToSession:(id)sender
{
    wscAppDelegate *appDelegate = (wscAppDelegate *)[[UIApplication sharedApplication] delegate];
    UIStoryboard * storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:[NSBundle mainBundle]];
    wscSessions *childView = [storyboard instantiateViewControllerWithIdentifier:@"sessionstable"];
//    wscSessions *childView = [storyboard instantiateViewControllerWithIdentifier:@"sessionstable"];
    childView._arrData = appDelegate._arrSession;
    childView._arrSpeaker = appDelegate._arrSpeaker;
    childView.title = @"SEssions";
    [self.navigationController pushViewController:childView animated:YES]; 
    }

有谁知道为什么在场景 2 中单元格始终为空?它在我的代码的其他地方引起了问题。

附加信息 我评论的两个人告诉我确保单元格标识符设置为“单元格”。这是屏幕截图……这是正确的吗?在场景 1 和场景 2 中都是这样的。 在此处输入图像描述

4

0 回答 0