UITableView常见用法以及注意细节
UITableView用途广泛,而且多样化,其中有一些不太常用,用到的话需要去查资料,今天边用边记录下来
*第一发:UITableViewCell 分割线
1. 分割线样式
[self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone];
2. 分割线长度
self.tableView.separatorInset = UIEdgeInsetsMake(0, 20, 0, 20);
3. 分割线颜色
self.tableView.separatorColor = [UIColor blueColor];
3. 自定义分割线
1.设置隐藏分割线
[self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleNone];
2.在Cell中重写- (void)drawRect:(CGRect)rect方法
- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, [UIColor clearColor].CGColor);
CGContextFillRect(context, rect);
//上分割线,
CGContextSetStrokeColorWithColor(context, [UIColor grayColor].CGColor);
CGContextStrokeRect(context, CGRectMake(5, -1, rect.size.width - 10, 1));
//下分割线
CGContextSetStrokeColorWithColor(context, [UIColor grayColor].CGColor);
CGContextStrokeRect(context, CGRectMake(24, rect.size.height, rect.size.width - 48, 1));
}
*第二发:UITableViewCell重要的属性
1.是否可以点击
self.tableView.allowsSelection = NO;
2.点击cell显示样式
cell.selectionStyle = UITableViewCellSelectionStyleBlue;
3.点击cell不变色
cell.selectionStyle = UITableViewCellSelectionStyleNone;
4.cell右边图标
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
另:cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton cell的右侧是个button,通常会自定义button
同时附上点击触发相应代理方法
- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"%ld", indexPath.row);
}
4.//滚动 弹簧效果
self.tableView.scrollEnabled = NO;
self.tableView.bounces = NO;
5.//不显示没内容的cell
self.tableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];
*第三发:UITableView常用方法
1. //cell展示数据,向后缩进
- (NSInteger)tableView:(UITableView *)tableView indentationLevelForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.row == 0) {
return 10;
}
return 0;
}
2.//用来指定cell的触发事件
- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
//点击第一个cell 没有反应
if (indexPath.row == 0) {
return nil;
}
return indexPath;
}
注意点:
1.当有多个section时,用UITableViewStyleGrouped,因为经常用UITableViewStylePlain,所以上次遇到问题百思不得其解
2.代理注意不要忘记了,经常出现代理方法不走,记得回头看看哦
3.UITableView风格两种样式的不同 UITableViewStyleGrouped头视图不会悬浮,会跟着view一起滚动,特别是两个section的间距,第一系统有默认间距,第二需要同时调用设置header和footer的代理间距,且不能设置为0,可以0.1;而UITableViewStylePlain悬浮最上面,多用于通讯录。
//时间有限,用到再写,持续更新中.......
UITableView常见用法以及注意细节的更多相关文章
- Linux中find常见用法
Linux中find常见用法示例 ·find path -option [ -print ] [ -exec -ok command ] {} \; find命令的参数 ...
- php中的curl使用入门教程和常见用法实例
摘要: [目录] php中的curl使用入门教程和常见用法实例 一.curl的优势 二.curl的简单使用步骤 三.错误处理 四.获取curl请求的具体信息 五.使用curl发送post请求 六.文件 ...
- Guava中Predicate的常见用法
Guava中Predicate的常见用法 1. Predicate基本用法 guava提供了许多利用Functions和Predicates来操作Collections的工具,一般在 Iterabl ...
- find常见用法
Linux中find常见用法示例 ·find path -option [ -print ] [ -exec -ok command ] {} \; find命令的参数 ...
- iOS 开发多线程篇—GCD的常见用法
iOS开发多线程篇—GCD的常见用法 一.延迟执行 1.介绍 iOS常见的延时执行有2种方式 (1)调用NSObject的方法 [self performSelector:@selector(run) ...
- iOS开发多线程篇—GCD的常见用法
iOS开发多线程篇—GCD的常见用法 一.延迟执行 1.介绍 iOS常见的延时执行有2种方式 (1)调用NSObject的方法 [self performSelector:@selector(run) ...
- [转]EasyUI——常见用法总结
原文链接: EasyUI——常见用法总结 1. 使用 data-options 来初始化属性. data-options是jQuery Easyui 最近两个版本才加上的一个特殊属性.通过这个属性,我 ...
- NSString常见用法总结
//====================NSStirng 的常见用法==================== -(void)testString { //创建格式化字符串:占位符(由一个%加一个字 ...
- [转]Linux中find常见用法示例
Linux中find常见用法示例[转]·find path -option [ -print ] [ -exec -ok command ] {} \;find命令的参 ...
随机推荐
- @MarkFan 口语练习录音 20140423 [风雨哈佛路.Homeless To Harvard口语录音]
世界在转动,你只是一粒尘埃 没有你,世界照样在转 现实不会按照你的意识去改变的 一些人的需求 一些人的意志要比你更强 严酷的生活会让人不知所措 所以他们久久地困在挫败中 我们生气地抱怨,而对整体的形势 ...
- HISAT2的运用
功能: 用于有参考基因组存在的比对工具(适用于whole-genome, transcriptome, and exome sequencing data) 用法: hisat2-build [opt ...
- 三 ip dns等配置
一IP.端口.协议基本概念 ip的简单概念 互联网上的计算机,都会有一个唯一的32位的地址,ip地址 我们访问服务器,就必须通过ip地址 局域网里也有预留的ip地址 192/10/172.居于王的i ...
- 20145240《Java程序设计》第一周学习总结
20145240 <Java程序设计>第一周学习总结 教材学习内容总结 第一周学习Java首先从最基本的下载.配置环境.了解基本人机命令行方式等基础知识,以及编写简单的"Hell ...
- INSPIRED启示录 读书笔记 - 第32章 提防有特殊要求的产品
产品需求不能用户说了算 1.在看到具体的产品之前,用户很难知道自己需要什么 2.用户不知道什么样的产品是可行的(在目前的技术条件下可以实现) 3.用户之间缺少沟通,需求很难统一 怎样回避特例产品可能带 ...
- GCC编译器入门[转载]
GCC编译器(GNU C Compiler)是GNU组织的一款开源 编译器,它是Linux环境下的默认C语言编译器.它处理能够高效的编译C语言以外,还可以编译其他语言.并且,现在的GCC已经不光包括编 ...
- Maximum Subsequence Sum【最大连续子序列+树状数组解决】
Problem Description 给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 <= i < ...
- 外推主要发布平台(JM)
百家.搜狐.一点.头条 主要发布平台: 搜狐(权重高.收录好.审核相对宽松) https://mp.sohu.com/mpfe/v3/login 网易号(开通网易号,会有网易博客,网易博客可被收录 ...
- linux基础(1)-yum源配置
用linux将近一年了,开始学的东西因为没经常用都忘记了,现在将笔记的东西慢慢整理成自己的博客,也算是看着自己进步.有些东西从他人博客笔记学的,有些是从视频学的,有些是自己填坑积累的. 在linux下 ...
- 深入分析理解Tomcat体系结构
Tomcat整体结构 由上图可知Tomcat的顶层容器是Server,而且一个Tomcat对应一个Server,一个server有多个service提供服务.service包含两个重要组件:Conne ...