iosiOS开发代码段程序员

让UITableViewCell的分隔线宽度等于屏幕的宽度

2016-03-05  本文已影响597人  真一

3种方法:

1、自定义cell:

 1)、取消系统的分隔线
 2)、添加一个高度为1,宽度为屏幕宽度的UIView作为cell的子视图,通过设置frame或者约束使这个UIView始终在cell的底部
 3)、设置UIView的背景色,这样看起来就是cell的分隔线等于屏幕的宽度。

2、通过设置系统的属性也能达到这个目的:(弊端,只支持iOS8.0)

设置tableView的separatorInset和cell的layoutMargins:
   self.tableView.separatorInset = UIEdgeInsetsZero;   
   cell.layoutMargins = UIEdgeInsetsZero;
   ```
###3、重写cell的setFrame方法(万能):
   1)、取消系统的分隔线
   2)、重写cell的setFrame方法,减小cell的高度:
   - (void)setFrame:(CGRect)frame {
           frame.size.height -= 5;       //  height减小的值就是分隔线的高度
           [super setFrame:frame];
   }
   3)、设置tableView的背景色就是分隔线的颜色
上一篇下一篇

猜你喜欢

热点阅读