UITableView不能调用cellForRowAtIndexPath
我想创建一个视图控制器与地图作为标题(工作),但我的tableview不会填充和cellForRowAtIndexPath
方法永远不会被调用。有什么建议么?UITableView不能调用cellForRowAtIndexPath
代码在这里要点:https://gist.github.com/ohwutup/5229232 这里是我的IB设置的一些截图:
你的tableview的数据源和委托应该是你的视图控制器,DOViewController。然后你tableview将正确填充。将IB中的插座更改为指向您的视图控制器类。
当我这样做时,我得到一个问题,“视图一次只能与最多一个视图控制器关联!” – ohayon 2013-03-23 21:11:16
在您的viewDidLoad
方法中,添加此项。
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.title = @"Nearby";
self.tableView.tableHeaderView = _mapView;
self.tableView.delegate = self;
self.tableView.dataSource = self;
...
}
也不工作。我通过在我的AFJSONRequestOperation – ohayon 2013-03-23 23:48:37
的完成块中调用[_tableview reloadData]工作。在任何代码中,您都需要调用[self.tableView reloadData],但UITableView知道类是“委托和数据源”你的桌子。在这种情况下是DOViewController类。 – Menio 2013-03-24 00:01:06
现在我在代码中看到,您错过了'@syntetize'用于所有'@property'的用法。像'@sintetyze tableview = _tableView;' – Menio 2013-03-24 00:13:29
需要在我的json请求的完成块中做[self reloadData]
。
是否将表视图的委托和数据源设置为表视图本身?或者截图上的“Table ...”是什么? – 2013-03-23 20:33:35
是的。并通过这个问题,我已经可以告诉我做错了什么:/ – ohayon 2013-03-23 20:35:07