如何刷新UITableView数据?

问题描述:

我有一个UITableView有两个部分,当我的应用程序启动时它们都是空的。我的应用程序从URL获取数据,然后将数据放入数组(每个部分一个),这些数据应该用于为每个单元提供UITableView数据。如何刷新UITableView数据?

调用[tableView reloadData]似乎没有刷新任何数据或调用任何委托方法。 (如请求的部分和行的数量等,虽然我不知道它是否实际上应该)
我使用自定义的UITableViewCells,如果有帮助。

我也尝试刷新部分,并循环浏览数据将每个单元格添加到部分。似乎没有任何工作。
我再次检查,一切似乎是正确的,并且UITableView已在Interface Builder中正确连接。
我在我的应用程序(在其他选项卡)中有两个其他表视图,它们工作得很好,但它们都只有一个部分。

+0

它应该是。 作为一个起点 - 当表视图第一次加载时调用预期的委托方法? – 2010-07-25 03:07:41

+0

是的,他们是。不过,这是调用委托方法的唯一时间。 – ttarik 2010-07-25 04:16:25

如果你在该行上放置一个断点,并将鼠标悬停在“tableView”上,它是否表示内存地址是0x0?

+0

是的,它的确如此。我猜这是一件坏事......任何想法为什么会发生? – ttarik 2010-07-25 04:18:46

+0

是的......这意味着您所引用的“tableView”不是您尝试连接到IB的tableView。尝试这个;将你的outlet的名字从tableView更改为myTableView(或其他),但不要将它命名为类似于视图控制器上已经存在的东西。把一切都备份到你最近命名的插座上(并确保你改变任何潜在的伊娃尔名字)...我敢打赌你会开始工作。 – Steve 2010-07-25 05:51:28

+0

不幸的是它没有工作,它仍然返回null。我检查了其中一个表视图委托方法numberOfSectionsInTableView,并在其中调用正确的表视图。然后不知何故,当我稍后引用该表视图时,它是空的。 – ttarik 2010-07-25 06:15:02

检查的几件事情:

  1. 确保的tableView连接多达文件的所有者在IB
  2. 确保tableView.delegate =自
  3. 确保您的数据源其实有数据
+0

1.已经是 2.已经是 3.它确实存在,但是没有调用方法来创建单元格 – ttarik 2010-07-25 05:28:10