iOS 关于tableView cell的分割线的一些设置
来源:互联网 发布:子域名查询工具 编辑:程序博客网 时间:2024/05/05 21:48
对于iOS的tableView的cell的分割线,一般我们很少使用不是系统默认的,但是有些项目要求还是要求我们去改变分割线的颜色或者外形以配合整个项目的色调。这个苹果公司早都为我们想到了。
一、关于分割线的位置。
分割线的位置就是指分割线相对于tableViewCell.如果我们要根据要求调节其位置,那么在iOS7.0版本以后,提供了一个方法如下:
if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) { [self.tableView setSeparatorInset:UIEdgeInsetsMake(0, 45, 0, 0)]; }
UIEdgeInsets 的四个参数分别是相对于cell的上、左、下、右的距离,都是CGFloat型。
二、分割线的颜色及风格:
a、cell的分割线的颜色不是cell的属性,它属于tableView的separatorColor属性。这样我们只需要设置属性值就可以得到所有我们想要的颜色的分割线、
[self.tableView setSeparatorColor:[UIColor clearColor]];
b、cell的风格:它是tableView 的separatorStyle属性,系统给我们提供了三种风格在枚举UITableViewCellSeparatorStyle中定义,分别是
typedef NS_ENUM(NSInteger, UITableViewCellSeparatorStyle) { UITableViewCellSeparatorStyleNone, UITableViewCellSeparatorStyleSingleLine, UITableViewCellSeparatorStyleSingleLineEtched // This separator style is only supported for grouped style table views currently};
默认的是UITableViewCellSeparatorStyleSingleLine.
三、tableViewCell 分割线自定义:首先要把cell自带的分割线给去掉,使用如下两种都行,一是把颜色设置为clearColor,二是风格设置为UITableViewCellSeparatorStyleNone。
自定义cell分割线大致用到的两种方法
a、把自定义的分割线当成一个View放到cell的contentView上,一定要注意重用问题,所以这个view 要在cell初始化的时候添加上。示例代码如下:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ UITableViewCell *cell = nil; cell = [tableView dequeueReusableCellWithIdentifier:@"cell"]; if (cell == nil) { cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"cell"]; cell.accessoryView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"huicellacce"]]; cell.backgroundColor = [UIColor clearColor];// cell.selected = YES; UIImageView *imageViewSepE = [[UIImageView alloc]initWithFrame:CGRectMake(47, 49, 200, 1)]; imageViewSepE.image = [UIImage imageNamed:@"godline"]; [cell.contentView addSubview:imageViewSepE]; }}
b、比较复杂,用到了底层的框架,
- (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetFillColorWithColor(context, [UIColor clearColor].CGColor); CGContextFillRect(context, rect);
CGContextSetStrokeColorWithColor(context, [UIColorcolorWithHexString:@"ffffff"].CGColor);
CGContextStrokeRect(context, CGRectMake(5, -1, rect.size.width - 10, 1)); //下分割线 CGContextSetStrokeColorWithColor(context, [UIColor colorWithHexString:@"e2e2e2"].CGColor); CGContextStrokeRect(context, CGRectMake(5, rect.size.height, rect.size.width - 10, 1)); }
- iOS 关于tableView cell的分割线的一些设置
- iOS 关于tableView cell的分割线的一些设置
- iOS 关于tableView cell的分割线的一些设置
- iOS tableView cell的分割线设置
- iOS TableView的cell分割线格式
- 去掉tableview中cell的分割线的设置
- 设置tableview的cell的两边满格 分割线
- ios tableView隐藏多余的cell分割线separator
- iOS tableView去掉显示多余的cell分割线
- iOS-swift-tableview隐藏多余的cell分割线
- tableView 的 cell 的分割线样式
- ios tableView那些事 (十)设置 tableview 的分割线
- ios tableView那些事 (十)设置 tableview 的分割线
- ios tableView那些事 (十)设置 tableview 的分割线
- ios tableView那些事 (十)设置 tableview 的分割线
- iOS开发技巧-tableView去掉多余的空行分割线,自定义Cell分割线
- ios开发技巧之tableView去掉多余的空行分割线 自定义cell分割线
- iOS开发技巧-tableView去掉多余的空行分割线,自定义Cell分割线
- NSString彻底去除空格的方法
- Charles(最强大的http调试工具)详细教程(上)
- LeetCode 107 Permutations
- Given two (dictionary) words as Strings, determine if they are isomorphic
- 使用jQuery使Div居中
- iOS 关于tableView cell的分割线的一些设置
- Linux下各文件夹的含义
- VP2.0中的纹理动画设计
- nginx 相关
- 黑马程序员——面向对象(二)---类的继承、多态性、匿名内部类、异常、包、访问控制、命名规范、jar文件
- STM32的BootLoader 从SD卡更新固件
- java中的LinkedList
- 将JNI的dll添加到jar包并发布和执行的方法
- SQL搜索含通配符的字符串