tableView的用法具体解释
1 tableView的类型
1.1 UITableViewStylePlain 没有区头 不显区头 向上滑动区头不会移动到屏幕外面
’ 1.2 UITableViewStyleGrouped 有区头 表滑动,区头会移动
2 cell accessory cell的配件
//cell配件(accessory)
// 0 none 什么也没有
// 1 DisclosureIndicator 多了一个指向右側的button
// 2 DetailButton 具体信息button
// 3 Checkmark 对勾
// 4 DetailDisclosureButton 具体信息button + 指向右側的箭头
cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
还能够在设置huadong
3 设置cell 选中状态
//设置选择类型 默觉得灰底
cell.selectionStyle = UITableViewCellSelectionStyleDefault;
4 NSCopying 协议 作用是仅仅有实现此方法的类就能够调用copy方法
系统的某些类是默认实现NSCopying协议,诸如NSSting,NSArray,NSDictionary等;
所以 之前的People的类的对象默认是不能调用copy方法,由于People没有实现NSCopying协议中的copyWithZone方法.
暂时字符串的引用计数是 -1 NSString *str = @"laosun";
通过创建字符串的对象的方式 引用计数为1 能够进行拷贝 引用计数加 1 效果等同于retain
NSString *str1 = [NSString stringWithFormat:@"laosun"];
4.1 浅拷贝 copy
retain拷贝的时指针,对象仅仅有一个,结果使得对象的引用计数 + 1
4.2 深拷贝 真正意义上的拷贝,仅仅是要产生两个对象,并且每一个对象的引用计数是1
5 // 此属性就能够取代 设置区头高度的 协议方法
_tableView.sectionHeaderHeight = 50;
6 创建tableView所必须的三个方法
6.1 //在tableView上有几个区域
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
6.2 //每一个区域有多上行
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
6.3 每一行的cell
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
7 相关协议
7.1 区头须要多个控件 则能够先创建一个View,然后再view上加入控件,view和相关控件在例如以下的方法中创建
-(UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section;
7.2 设置cell的编辑风格
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath;
风格类型
7.2.1 UITableViewCellEditingStyleDelete 删除
7.2.2 UITableViewCellEditingStyleInsert 插入
7.2.3 UITableViewCellEditingStyleNone 默认
7.3 cell能否够移动 返回的时一个BOOL值
- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
7.3.1 用来移动的三杠
- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath
移动逻辑: 取>删>加入
7.4 完毕编辑
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath;
删除和插入所做的操作写在这里 删除逻辑:删除对象 > 删除行
8 展开闭合逻辑:
通过一个bool值推断(_falg[3]),假设是yes则返回对应数组的count,否则返回0 (在和行相关的方法中),刷新对应的行的数据
9 表的编辑 增 ,删 ,移
tableView的用法具体解释的更多相关文章
- tableView特色用法
// // ViewController.m // UITableView // // Created by yhj on 15/12/15. // Copyright © 2015年 QQ: ...
- 31 Python中 sys.argv[]的用法简明解释(转)
Python中 sys.argv[]的用法简明解释 因为是看书自学的python,开始后不久就遇到了这个引入的模块函数,且一直在IDLE上编辑了后运行,试图从结果发现它的用途,然而结果一直都是没结果, ...
- Python中 sys.argv的用法简明解释
Python中 sys.argv[]的用法简明解释 sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,所以那些试图从代码来说明它作用的解释一直没看明白.因为我们从外部取得 ...
- H5 新标签用法及解释
HTML 5 是一个新的网络标准,目标在于取代现有的 HTML 4.01, XHTML 1.0 and DOM Level 2 HTML 标准.它希望能够减少浏览器对于需要插件的丰富性网络应用服务(p ...
- sed详解---用法及解释
1.sed -n '2'p filename 打印文件的第二行. 2.sed -n '1,3'p filename 打印文件的1到3行 3. sed -n '/Neave/'p filename 打印 ...
- destoon系统中get_maincat的用法及解释
get_maincat函数的用法, 如get_maincat(0, $mid, 1),其中第一.二.三个参数分别表示什么? 第一个参数代表parentid 第二个参数代表所有的分类 第三个参数 代表 ...
- IOS开发UI篇之tableView 的用法详解
1.我们知道tableView是IOS中的高级视图,其继承与ScrollView,故我们知道他有具有ScrollView的所有功能.而且还扩展了许多.当然在这里就不一一介绍了. 2.tableView ...
- IOS中TableView的用法
一.UITableView 1.数据展示的条件 1> UITableView的所有数据都是由数据源(dataSource)提供的,所以要想在UITableView展示数据,必须设置UITable ...
- Python中 sys.argv[]的用法简明解释
sys.argv[]就是一个从程序外部获取参数的桥梁,这个“外部”很关键.因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可以看作是一个列表,所以才能 ...
随机推荐
- Android 八款开源 Android 游戏引擎
原文地址 本文内容 Angle Rokon LGame AndEngine libgdx jPCT Alien3d Catcake 最近无意间看到一篇关于 Android 搜索引擎的文章,于是搜索了, ...
- CentOS6.5安装nginx1.5.8时出现“cp: "conf/koi-win" 与"/usr/local/nginx/conf/koi-win" 为同一文件”的解决方法
安装方法主要参考了:http://www.cnblogs.com/zhoulf/archive/2013/02/09/2909653.html这篇文章,出现“cp: "conf/koi-wi ...
- centos7.2安装社区版docker-ce-17.06.1
先yum install安装如下包: container-selinux-2.21-1.el7.noarch libcgroup-0.41-13.el7.x86_64 libtool-ltdl-2.4 ...
- iOS webservice SOAP 请求
1. Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的.专门的第三方软件或硬件, 就可相互交换数据或集成.依据Web Service规范实施的应用之间, 无论它们所使用的语 ...
- HTTPS与HTTP协议区别
1.主要区别 (1)超文本传输协议HTTP,HTTP下加入SSL层(位于传输层)的安全协议. (2)HTTP端口为80,HTTPS端口是443. 2.HTTPS通信过程 https 通信传输过程:
- Python学习笔记六:文件处理
一:打开文件 open(name,mode,[bufferSize]) name:文件路径 mode:文件打开方式 二:文件读取 read()方法:可以一次读取文件的全部内容,Python把内容读到内 ...
- length-of-last-word 最后一个单词的长度
Given a string s consists of upper/lower-case alphabets and empty space characters' ', return the le ...
- java第二节 基本数据类型
class Lesson2 { public static void main(String[] args) { //----------------------------------- //@Da ...
- jenkins 搭建过程中遇到的问题
1.[ERROR] Unknown lifecycle phase "mvn". You must specify a valid lifecycle phase or a goa ...
- 编程填空:第i位取反
总时间限制: 1000ms 内存限制: 1024kB描述写出函数中缺失的部分,使得函数返回值为一个整数,该整数的第i位是n的第i位取反,其余位和n相同 请使用[一行代码]补全bitManipulati ...