我整天都被困在这一天。
我有一个带有自定义表格单元格的Nib文件,我用它来加载到 tableView视图控制器的实例变量。
在视图控制器中,我有一个搜索栏和一个表视图IBOutlets和一个NSMutableArray来存储我的数据作为实例变量等。
我有一个使用Restkit对外部API进行异步调用的对象,因此我将视图控制器定义为委托,以便在请求完成时接收数据,将其保存在NSMutableArray上,然后触发reloadData。
因为我正在进行异步调用,所以方法shouldReloadTableForSearchString负责发送请求,然后返回NO。
如果我返回YES而不是NO,之后调用reloadData,我的单元格被加载到tableView后退一步我的调用,这意味着如果我键入第一个字母没有任何反应,但在第二个字母上我得到第一个字母的结果。这种行为没关系,因为在shouldReloadTableForSearchString返回YES之后设置了实例变量。这是预期的,好的。
我面临的问题是,如果我只使用reloadData,并且shouldReloadTableForSearchString返回NO,则不会将单元格分配给tableView。我检查并调用了cellForRowAtIndexPath,并且每个单元格都是使用数据创建的,但是没有显示。
也许我的数据源属性有问题,但我不确定。
我没有区别。任何想法?