oc TableView 分割线(separator)显示问题

问题:当TableView的cell不能显示完整个屏幕(屏幕有剩余),则没有显示cell的地方会显示分割线。而正常情况下,如果没有cell则应没有分割线。如下图所示:左图为遇到问题,右图为想要的结果

解决方法:

1 我们可以通过代码禁止所有的cell显示分割线,即

self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;然后再自定义cell,在cell里面添加一条线。

不过这种太麻烦

2 利用设置Separator边界可以轻松解决。

1)先设置TableView整体的Separator左边界为很大一个数,即让其显示在屏幕外,假如设为1000,如下图:

2)每一个cell在重新设置Separator左边界为一个正常值例如15,来覆盖TableView的整体设置,如下图

时间: 2024-10-14 22:08:00

oc TableView 分割线(separator)显示问题的相关文章

swift 一句代码补全tableView分割线

1.swift实现分割线补全 swift一个大进步,只要设置tableView.separatorInset = UIEdgeInsets.zero即可补全分割线, 2.OC实现分割线补全 而在OC中,我们要实现UITableViewDelegate的两个代理方法才能得到想要的效果.OC实现代码如下 - (void)viewDidLayoutSubviews { if ([self.tableView respondsToSelector:@selector(setSeparatorInset:

iOS tableView右滑显示选择

如何使用UITableViewRowAction实现右滑选择呢? 1.在iOS8以前,我们实现tableview中滑动显示删除,置顶,更多等等的按钮时,都需要自己去实现,在iOS8中系统已经写好了,只要一个代理方法和一个类就行了 2.iOS8的协议对了一个方法,返回值是数组的tableview:editActionForRowAtIndexPath:方法,我们可以在方法内部写好几个按钮,然后放到数组中返回,那些按钮的类就是UITableviewRowAction 3.在UITableviewRo

关于对tableView分割线的处理

都知道,苹果自带tableView分割线不是整个屏幕宽度的.很多时候,需求让分割线等于屏幕宽度,就需要进行一些设置. 一.storyboard中: 对静态tableView的设置,选中tableView,在右侧会有下面的选项. 图中红色部分,就是设置分割线的左右间距.但是很遗憾,当left为0时,与屏幕宽度还是差了一点点.于是,需要进行代码设置 二.代码设置 在tableView中,加入以下代码,即可 -(void)viewDidLayoutSubviews{    if ([self.tabl

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

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

类似ipad上的split,左边的tableview控制右边显示不同的视图

类似ipad上的split,左边的tableview控制右边显示不同的视图        最近要做一个项目,这个项目在ipad上运行,需要页面横向放置,首先,先记录一下怎么让程序运行后页面横向显示,我设置了一个基类的视图控制器,下边就称作base页面. 这个控制器里,填写一段这样的代码,所有的页面都继承自这个视图控制器,起到所有的页面都是横向展示 #pragma mark - #pragma mark -继承自这个类,以便于页面自动就会横屏 - (BOOL)shouldAutorotateToI

关于tableview不能全部显示cell的问题?

今天遇到一个问题,在UIview上添加一个tableview的字控件,可是页面做完之后发现cell不能全部显示: 各种尝试:1.以为弹力问题,就把弹簧效果去掉不行. 2.还以为是重用机制问题 最后发现,是tableview的frame的问题 因为tableview的frame超出了屏幕,所以cell也只能显示部分: 上个图吧: _personalTableView = [[UITableView alloc] initWithFrame:CGRectMake(_personalTableView

iOS tableView分割线高度自定义

1.系统自带的集中分割线的形式 myTableView.separatorStyle=UITableViewCellSeparatorStyleNone;(这个是去掉所有分割线)可以通过这个来设置 2.另外设置自定义的cell 首先通过myTableView.separatorStyle=UITableViewCellSeparatorStyleNone这个方法去掉所有的cell,然后在重载cell的drawRect方法,通过Quartz 2D技术直接进行绘制,思路如下,首先绘制整个cell的背

解决tableView分割线左边不到边

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

动态的计算行高 加载数据源 有多少显示多少 tableView 包含 colloctionView 显示复杂的界面写法

有时候,我们经常碰到这样的需求 先遵守代理 @interface PublishCollectionCell ()<UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout> 创建 _layout = [[UICollectionViewFlowLayout alloc] init]; //        layout.scrollDirection = UICollecti