系統(tǒng)自帶的UITAbleViewCell之間的分割線默認左邊是有邊距的,如圖
- 然而我們在工作中經常遇到cell的分割線要占據全屏的需求,接下來我就用三種方式來講講怎樣讓cell的分割線占據全屏
- 方式一:這種方式只適用于xib,首先隱藏掉系統(tǒng)的分割線,然后在xib中在cell的底部添加一個高度為1寬度為屏幕寬度的view
- 隱藏系統(tǒng)自帶的分割線:
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
-
在xib中添加一個view并設置約束和顏色:
-
效果圖:
- 隱藏系統(tǒng)自帶的分割線:
- 方式二:設置tableView的separatorInset
self.tableView.separatorInset = UIEdgeInsetsZero;
運行程序后還是存在邊距,接下來設置cell的屬性self.layoutMargins = UIEdgeInsetsZero;
,設置成功:
- 方式三:這個方式是萬能的,不需要考慮版本適配問題,其實也是投機取巧了,原理是重寫cell的setFrame方法,把cell的高度減一,這樣tableView的背景就露出來了,步驟:
- 1.隱藏分割線
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
- 2.設置tableView的背景色為分割線的顏色
self.tableView.backgroundColor = LHLColor(220, 220, 221);
- 3.重寫setFrame方法
- (void)setFrame:(CGRect)frame
{
frame.size.height -=1;
[super setFrame:frame];
}