ios8 解决tableview分割线缺少的15像素

在ios7中,UITableViewCell左侧会有默认15像素的空白。这时候,设置setSeparatorInset:UIEdgeInsetsZero 能将空白去掉。

但是在ios8中,设置setSeparatorInset:UIEdgeInsetsZero 已经不起作用了。下面是解决办法

首先在viewDidLoad方法加入以下代码:

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

[self.tableView setSeparatorInset:UIEdgeInsetsZero];

}

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

[self.tableView setLayoutMargins:UIEdgeInsetsZero];

}

然后在UITableView的代理方法中加入以下代码

- (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];

}

}

时间: 2024-08-09 21:00:31

ios8 解决tableview分割线缺少的15像素的相关文章

解决tableView分割线左边不到边的情况

//解决tableView分割线左边不到边的情况//    if ([tableView respondsToSelector:@selector(setSeparatorInset:)]) {//        [tableView setSeparatorInset:UIEdgeInsetsZero];//    } 解决tableView分割线左边不到边的情况

解决tableView的分割线少了15像素的问题

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

解决tableView分割线左边不到边

//分割线不到边 - (void)viewDidLayoutSubviews{ [super viewDidLayoutSubviews]; if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) { [self.tableView setSeparatorInset:UIEdgeInsetsZero];     } if ([self.tableView respondsToSelector:@selecto

iOS 解决tableView分割线从边框顶端开始

1.直接把tableView设置成self.tableView.separatorStyle =UITableViewCellSeparatorStyleNone.然后自定义cell那里自己加一个view,高度为1,颜色自己设置. 2.添加这两个方法 -(void)viewDidLayoutSubviews { if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) { [self.tableView setS

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

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

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

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

tableView 隐藏多余分割线,tableView分割线增加15像素

1 //隐藏分割线 2 [self setExtraCellLineHidden:_tableView]; 3 //隐藏多余分割线 4 -(void)setExtraCellLineHidden: (UITableView *)tableView 5 { 6 UIView *view = [UIView new]; 7 view.backgroundColor = [UIColor clearColor]; 8 [tableView setTableFooterView:view]; 9 } 1

IOS8 设置TableView Separatorinset 分割线从边框顶端开始

IOS8 设置TableView Separatorinset 分割线从边框顶端开始 在ios8上 [TableView setSeparatorInset:UIEdgeInsetsMake(0,0,0,0)];不起作用 经过测试加入下面方法 在ios7 8上都可以正常工作 -(void)viewDidLayoutSubviews{    if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {       

(转) IOS8 设置TableView Separatorinset 分割线从边框顶端开始

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