UITableView 在请求数据后调用reloadData只走

2019-08-02  本文已影响0人  Lucky_春春

UITableView 在请求数据后调用reloadData只走numberOf相关代理,不走cellForRowAtIndexPathHeightForRow等代理的坑

最近项目遇到这个坑,我遇到的情况是,数据拿到,且走了下面这两个方法,-(NSInteger)numberOfSectionsInTableView:(UITableView*)tableView

-(NSInteger)tableView:(UITableView*)tableView numberOfRowsInSection:(NSInteger)section

其他代理方法没有走,尤其是关键的cellForRow,搞得有点头疼

检查了tableview的frame宽高都有值,但是:

注意:

是在请求到数据之后,才有tableView的frame才有值

是在请求到数据之后,才有tableViewframe才有值,这就是——导致除上面两个number相关代理方法走了,其他代理方法不走的原因!!!!

解决:要在请求到数据之前,也就是dataSource的值为空时,就要把tableView的frame设置好,确保有宽和高,不能为 0 !才能保证拿到数据的时候,tableView是有frame的,就能正常调用cellForRow等代理方法✌️

如果有更好的方法或者有补充、疑问的请留意,谢谢!❤️

上一篇 下一篇

猜你喜欢

热点阅读