通常我们在自定义一个UITableViewCell时,从网络上获取数据,传入到自定义tableviewcell类中,进行加载,运行程序之后,发现仍然没有数据显示;
这里我们以简单的数据源形式来做一次实验,如图所示:
这里_dataSource为NSArray的对象,CustomTableViewCell为自定义cell类,当前为viewcontroller 中的代码;
如下图,为自定义cell中的代码部分:
CustomTableViewCell.h头文件部分:
CustomTableViewCell.m文件部分:
运行之后,发现没有任何数据显示;
原因:- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath方法中,先定义cell,也就是说 先执行 - (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier方法,而此时, [label setText:_title]; _title数据为空;执行完毕之后,才给_title赋值: cell.title = _dataSource[indexPath.row];
解决方案:重写属性title的设置器方法,并在方法中,设定label的text,即可;
如下图:
运行之后,如下图,完全正常:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。