tableViewCell的分割线短一截的问题

最近在写很简单的tableView的布局时,发现系统自带的Cell分割线短了15像素,不过这个可以更改,纯代码方式如下:

//设置分割线到头,不再断15像素

if ([self.tableView respondsToSelector:@selector(setLayoutMargins:)]) {

[self.tableView setLayoutMargins:UIEdgeInsetsZero];

}

在ios7系统运行上面的就可以搞定,不过ios8 必须加上下面的方法和内容,否则依然短15像素

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath

{

if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {

[cell setSeparatorInset:UIEdgeInsetsZero];

}

if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {

[cell setLayoutMargins:UIEdgeInsetsZero];

}

}

原文出处:http://blog.csdn.net/lengshengren/article/details/19335637,向作者致敬!

时间: 2024-10-16 15:05:10

tableViewCell的分割线短一截的问题的相关文章

TableViewCell的分割线左边没有空隙

//TableViewCell的分割线处理 左边没有空隙-(void)viewDidLayoutSubviews {        if ([_tbView respondsToSelector:@selector(setSeparatorInset:)]) {        [_tbView setSeparatorInset:UIEdgeInsetsZero];            }    if ([_tbView respondsToSelector:@selector(setLayo

自定义tableviewCell的分割线

第一种:addsubview UIView *line = [[UIView alloc]initWithFrame:CGRectMake(10, cellH-0.5, DEVW-10, 0.5)]; line.backgroundColor = ViewLineColor; 第二种:自绘分割线. 首先设置tableView的separatorStyle为UITableViewCellSelectionStyleNone,即禁用tableview自带的分割线,然后在重载cell的drawRect

IOS tableview 消除 分割线短 15 像素 ios8方法 swift版

系统默认样式:   ios8 去除默认分割线边距的代码: //去除表格左侧分割线代码开始 func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) { //ios8 if cell.respondsToSelector("setSeparatorInset:"){ cell.separatorInset =

TableViewCell的分割线显示不完全处理方法

1.加方法,隐藏分割线 - (void)viewDidLoad { [super viewDidLoad]; //设置tableView不能滚动 [self.tableView setScrollEnabled:NO]; //在此处调用一下就可以啦 :此处假设tableView的name叫:tableView [self setExtraCellLineHidden:self.tableView]; } -(void)setExtraCellLineHidden: (UITableView *)

iOS8中UITableVIew分割线短的问题

在iOS8中会发现分割线默认是没有全部显示的,在iOS7中适用的代码 if ([self.myCardTableView respondsToSelector:@selector(separatorInset)]) { self.myCardTableView.separatorInset = UIEdgeInsetsZero; } 已经不管用了.而要在viewDidLoad中加入已下代码 if ([self.myCardTableView respondsToSelector:@selecto

TableViewCell自定义分割线

产品设计的要求cell的分割线长度不用是整个屏幕宽,并且设计要求分割线为2px(两条),上下不同色. 实现如下: UITableView中将分割线样式改为None [java] view plain copy tableView.separatorStyle = UITableViewCellSeparatorStyleNone; 自定义UITableViewCell中复写- (void)drawRect:(CGRect)rect方法 [java] view plain copy - (void

TableViewCell 自定义分割线

cell的分割线长度不用是整个屏幕宽,并且设计要求分割线为2px(两条),上下不同色. 实现如下:  UITableView中将分割线样式改为None tableView.separatorStyle = UITableViewCellSeparatorStyleNone; 自定义UITableViewCell中复写- (void)drawRect:(CGRect)rect方法 - (void)drawRect:(CGRect)rect { CGContextRef context = UIGr

iOS UITableView的分割线短15像素,移动到最左边的方法(iOS8)

有好几个朋友问我ios 分割线端了一些 如何解决,于是我就写一篇博客吧.为什么我说是少了15像素呢?首先我们拖拽一个默认的tableview 控件! 看下xcode5 面板的inspector(检查器)我们可以找到一个 Separator Insetss 标签 默认是 Default我们选择一下 发现有个Custom 这时候我们惊奇的发现Left 15 ,这时候我们只要把这个 15 改成 0 , 然后保存, 你就会发现tableview 的分割线跟以前一样了. 有些朋友问了如果是代码写的tabl

如何让tableViewCell的分割线从边框顶端开始

在ios8上 [TableView setSeparatorInset:UIEdgeInsetsMake(0,0,0,0)];不起作用 经过测试加入下面方法 在ios7 8上都可以正常工作 -(void)viewDidLayoutSubviews{    if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {        [self.tableView setSeparatorInset:UIEdgeIn