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常见用法以及注意细节的更多相关文章

  1. Linux中find常见用法

    Linux中find常见用法示例 ·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \; find命令的参数 ...

  2. php中的curl使用入门教程和常见用法实例

    摘要: [目录] php中的curl使用入门教程和常见用法实例 一.curl的优势 二.curl的简单使用步骤 三.错误处理 四.获取curl请求的具体信息 五.使用curl发送post请求 六.文件 ...

  3. Guava中Predicate的常见用法

    Guava中Predicate的常见用法 1.  Predicate基本用法 guava提供了许多利用Functions和Predicates来操作Collections的工具,一般在 Iterabl ...

  4. find常见用法

    Linux中find常见用法示例 ·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \; find命令的参数 ...

  5. iOS 开发多线程篇—GCD的常见用法

    iOS开发多线程篇—GCD的常见用法 一.延迟执行 1.介绍 iOS常见的延时执行有2种方式 (1)调用NSObject的方法 [self performSelector:@selector(run) ...

  6. iOS开发多线程篇—GCD的常见用法

    iOS开发多线程篇—GCD的常见用法 一.延迟执行 1.介绍 iOS常见的延时执行有2种方式 (1)调用NSObject的方法 [self performSelector:@selector(run) ...

  7. [转]EasyUI——常见用法总结

    原文链接: EasyUI——常见用法总结 1. 使用 data-options 来初始化属性. data-options是jQuery Easyui 最近两个版本才加上的一个特殊属性.通过这个属性,我 ...

  8. NSString常见用法总结

    //====================NSStirng 的常见用法==================== -(void)testString { //创建格式化字符串:占位符(由一个%加一个字 ...

  9. [转]Linux中find常见用法示例

    Linux中find常见用法示例[转]·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;find命令的参 ...

随机推荐

  1. R中的运算符,条件语句,控制语句

    1.运算符 算术运算符:+,-,*,/ 关系运算符:==,!=,>,>=,<,<= 逻辑运算符:&,|,&&,||,! &和|称为短逻辑符,&a ...

  2. 自己的第一个MapReduce程序

    数据源:来自互联网招聘hadoop岗位的薪资数据,其中几行示例数据如下: 美团 3-5年经验 15-30k 北京 [够牛就来]hadoop高级工程... 北信源 3-5年经验 15-20k 北京 Ja ...

  3. 20145240《Java程序设计》第二周学习总结

    20145240 <Java程序设计>第二周学习总结 教材学习内容总结 本周主要学习了第三章的内容,讲的是Java的一些基础语法,包括两大系统类型.变量.运算符的基本使用.类型转换及几个基 ...

  4. 基于Visual c++ 2012的php扩展开发 - HelloWord!

    1.cmd进入命令行模式,并进入php-5.6.20-src/ext源代码的ext目录下输入命令php ext_skel_win32.php --extname=HelloWord,执行结果如下图: ...

  5. JSP语法及内置对象

    JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1]  是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动 ...

  6. Zabbix3.2 客户端安装

    查看客户端环境: # cat /etc/redhat-release CentOS Linux release (Core) # uname -r -.el7.x86_64 Centos7 客户端: ...

  7. dreamweaver8快捷键

    替换Ctrl+H 处理表格 选择表格(光标在表格中) Ctrl+A 移 动到下一单元格Tab 移 动到上一单元格Shift+Tab 插入行(在当前行之前)Ctrl+M 在表格末插入一行 在最后一个单元 ...

  8. Kafka高可用环境搭建

    Apache Kafka是分布式发布-订阅消息系统,在 kafka官网上对 kafka 的定义:一个分布式发布-订阅消息传递系统. 它最初由LinkedIn公司开发,Linkedin于2010年贡献给 ...

  9. spark学习3(sqoop1.4.6安装)

    sqoop目前有两个版本sqoop1和sqoop2,这里安装的是sqoop1版本 1)将软件上传到spark1节点 2)修改权限 [root@spark1 sqoop]# chmod u+x sqoo ...

  10. 电子商务的几种模式,b2b,c2c等

    B2B(Business to Business) ——这是指商家与商家建立的商业关系.(最早的一种模式) C2C (Customer to Consumer) ——个人与个人的商业关系,也就是消费者 ...