-
系统默认情况下的cell的分割线,左边会预留一点的距离
cell.png
- 我们往往会要求cell的分割线左边不预留距离,下面给出几个方法:
- 1.自定义cell,在cell底部加上高度为1的View,设置View的背景颜色为所需分割线的颜色
- 2.设置cell分割线偏移量
allows customization of the frame of cell separators
设置分割线的偏移量,下面分别是iOS7和iOS8的属性
@property (nonatomic) UIEdgeInsets separatorInset
NS_AVAILABLE_IOS(7_0) UI_APPEARANCE_SELECTOR;
@property (nonatomic) UIEdgeInsets layoutMargins
NS_AVAILABLE_IOS(8_0);
用法如下
[self.tableView setSeparatorInset:UIEdgeInsetsMake(0, 0, 0, 0)]
~~~
- 3.自定义cell,重写cell的setFrame方法,在高度计算前,让cell高度减1,这样就获得了高度为1的分割线,分割线的颜色,是它父控件的背景颜色
重写这个方法的目的:拦截cell的frame设置
- (void)setFrame:(CGRect)frame
{
frame.size.height -= 1;
[super setFrame:frame];
}
- 自定义分割线设置完毕
网友评论