iphone - tableView reloadData 上未调用 cellForRowAtIndexPath

标签 iphone

我在一个 View 上有一个 UITableView,它在应用程序启动时加载数据,然后当用户在框中输入文本并点击按钮时,我重新查询数据库,重新填充原始 NSMutableArray存储表的数据。

所有这些都运行良好。在一些日志语句中,我可以看出数组具有正确的信息,numberOfRowsInSection方法返回正确的计数,并且在调用重新加载后被调用。

但是,cellForRowAtIndexPath 永远不会被调用第二次(重新加载后),并且表数据也永远不会更新。

我花了几个小时在网上搜索,但没有找到任何有帮助的东西。有人可以帮忙吗?

所有代码位于: http://github.com/botskonet/inmyspot

正在调用特定的重新加载: http://github.com/botskonet/inmyspot/blob/master/Classes/InMySpotViewController.m

大概是94号线

来自: http://github.com/botskonet/inmyspot/blob/master/Classes/PlateFormViewController.m

大致为第101行

更多信息:一旦新数据被添加到可变数组中,如果我尝试开始滚动表格,它最终会消失:

“由于未捕获的异常‘NSRangeException’而终止应用程序,原因:‘*** -[NSCFArray objectAtIndex:]: 索引 (29) 超出界限 (29)”

我认为这意味着表格单元格在数组中找不到任何数据来匹配滚动位置,这似乎是因为数组有新数据,但表格没有。

最佳答案

我也看到了同样的问题。我的问题是类似的:我有一个 UIViewController 子类 (MyViewController),其中包含一些内容,包括对我的 UITableViewController (MyTableViewController) 子类的引用。在MyViewController.xib中,为了确保MyViewController加载的tableView与MyTableViewController中加载的tableView是一样的,在 Interface Builder 中,我连接了 MyViewController 中 tableView 的引用,并使其指向 MyTableViewController 的 View 属性。

这是一张图片,因为 Interface Builder 中的操作很难描述: enter image description here

关于iphone - tableView reloadData 上未调用 cellForRowAtIndexPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2429670/

相关文章:

iphone - 如何在 Xcode 3.2.6 中使用较旧的 iOS 版本测试应用程序?

iphone - 在 C++ iPhone 游戏中使用 Objective-C 游戏引擎?

iPhone/iPad问题如何显示对话框+如何制作屏幕截图?

iphone - 通过蓝牙播放时AVAudioPlayer不流畅

iphone - 如何在 cocos3d 中导入 3ds max 模型 iPhone 示例

iphone - 一个 iOS 应用程序甚至可以访问另一个应用程序的缓存目录吗?

iphone - 当有多个 NSURLConnection 时,如何确定哪个 NSURLConnection 完成了加载?

iphone - 如何使用 NSURLConnection 实例传递信息,以便我可以从 connectionDidFinishLoading 获取它

iphone - 在应用程序中实现 iPhone 应用程序

ios - .xib 文件如何自动关联并加载到我的 ViewController?