未调用cellForRowAtIndexPath(再次)

时间:2012-10-02 07:41:33

标签: objective-c ios xcode

我已经找到了同样的问题,但答案对我没有帮助:( 也许是因为我有特定的问题。 将应用程序安装到iPhone 4S(iOS 5)后会出现一些问题。我已经修好了他们中的几个,但这个乍一看似乎更加顽固。

我在Xcode4中打开了现有的Xcode3项目,出现了这个问题。

我会在这里添加一些代码:

-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    // Return the number of sections.       
     return 1;
}


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    // Return the number of rows in the section.

    return [self.townShopsArray count];
}

我检查过:self.townShopsArray不是空的

功能:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { ...

未被调用,因此我不需要在此处输入代码。

当我将项目从Xcode 3升级到Xcode 4时,有人能告诉我出了什么问题吗?

1 个答案:

答案 0 :(得分:1)

以下是可能的原因:

  • 您的UITableView的数据源未设置为此控制器
  • 您的UIViewController / UITableViewController的类未设置为Interface Builder的 Identity Inspector 中此视图控制器的类。如果未设置,iOS将询问通用UITableView类以获取有关您的单元格的信息,而不是您所创建的类。 Custom Class

  • (如果以编程方式添加了UITableView)...指向表的指针不强,并且UITableView已被释放