ios开发 怎样设置cell高度在6上高度 和 6p上不一样

ios开发 怎样设置cell高度在6上高度 和 6p上不一样,第1张

动态调整即可。1 创建并添加一个UILabel作为单元格cell的子视图;2 在UITableView的委托方法: (CGFloat)tableView:(UITableView*)tableViewheightForRowAtIndexPath: (NSIndexPath *) indexPath中计算高度3 在UITableView的委托方法: (UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath: (NSIndexPath *) indexPath中计算UILabel的框大小。

1、

设置一个专门管理cell高度的字典,用indexPath.row作为KEY,Value初始化为44。比如名字叫heightDict

2、

-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

在这个方法中,indexPath.row作为key,从heightDict中拿到Value。这个value就是返回值。

3、

Cell中,每次下载更新图片前,先把cell高度保存起来。等下载更新完成,界面重新设置完毕后,比较当前cell高度和保存值是否相同。如果不同,就发delegate给ViewController,把当前cell高度和indexpath当作参数传递出去。

4、

ViewController中的delegate回调方法中,把indexPath.row作为key,将传入的Cell高度存入heightDict中,然后[tableView reloadData]

5完成

两种方式,看你的tableView是哪种样式。

如果是UITableViewStylePlain,你可以将UITableViewCell的separator设置为UITableViewCellSeparatorStyleNone。将tableViewCell的背景色,contentView的背景色设置为透明,在contentView中添加一个UIImageView做为背景,使UIImageView的高度小于cell的高度,这样创建出的tableView就可以使每个cell之间看起来有一定间隔。这个间隔就是imageView的高度与cell的高度之间的差值。

如果你的tableView样式是UITableViewStyleGrouped,那就更好办了,因为group的tableView每个section都是隔开的,你只需要给每个section添加一行cell就行了。如果需要调整section之间的距离,你可以用UITableView的属性sectionHeaderHeight或sectionFooterHeight来设置。也可以用delegate方法来设置高度,heightForHeaderInSection或heightForFooterInSection

希望可以帮到你


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11808695.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存