oc 如何才能改变cell的宽度,达到微信公众号里的消息cell的效果?

在setFrame:函数里改变frame,好像只能改变origin,而对width不起作用

阅读 5.7k
5 个回答

背景设为透明,你自己的 view 加到 cell.contentView 上,设置 frame,背景白色

用UICollectionView可能方便一些吧

有两种方法。
一个是限制TableView的宽度。
一个是在cell的contentView里面再放别的View,然后限制这个View的宽度。

用xib还是代码实现。。。
都要实现两个,tableview中的cell返回高度和每个cell的可变高度(就是你要定制的cell中的view高度)

你可以自定义cell宽度啊,必须知道cell的高度

  • (CGFloat)textWidth:(NSString *)string{
    // 宽度最好大点
    CGRect rest = [string boundingRectWithSize:CGSizeMake(10000, 30) options:(NSStringDrawingUsesLineFragmentOrigin) attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:17]} context:nil];
    // 返回宽度
    return rest.size.width;
    }

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题