IOS之UIKit_Day09
Day09
回顾:
1.表格的编辑
1.1删除和增加:
步骤:step1:启动表格的编辑模式
tableView.editing=yes;
step 2:两问一答:
问1 那些行可以编辑
问2 行的编辑模式是什么?
答1 提交编辑动作后响应(先修改数据模型在做界面的更新,界面的更新可以整体reload,也可以只针对修改的行进行insert或者delete)
1.2行的移动
步骤:一问一答
step:启动编辑模式
step:问1:当前行是否可以移动
问2: 移动数据行的响应
2 UITableViewCell
2.1contentView
2.1.1系统提供的默认样式
.textLable
.detailTextLable
.imageView
通过设定cell的style,三个控件会有不同的布局
Default
Subtitle Value1 Value2
2.1.2 自定义内容视图
创建出控件的实例后 以子视图的形式添加倒cell的contentView中即可
注意:由于单元格对象可以被重用,所以自定义子视图时应该区分创建和重用两种情况,当cell被新建时,子视图也是新建的,当cell是取的可重用的对象时,不能再新建子对象而是将创建过的子对象取出修改新值 为了在创建时为子视图设置tag属性,在取出子视图是依据tag值来判断[cell.contentView viewWithTag:1]
2.2系统提供的默认的辅助试图样式
设置cell的accessoryType属性
cell.accessoyType属性进行设置
UITableViewCellAccessoryDetailDisclosureButton
Checkmark:对勾
DetailDisclosureButton圆圈i
DisclosureIndicator大括号
DetailDisclosureButton圆圈加大于号
重点注意:
有圆圈I时:cell可以响应两种不同的点击事件,一个是点击圆圈I区域(accessoryButtonTap....方法)一个是点击圆圈i一个是点击圆圈i以外的区域(didSelectRowAtIndexPath)
b自定义辅助试图
设置cell的accessoryView属性
如:cell.accessoryView=[UISwith alloc]init….];
将创建的试图 赋值给accessoryView属性
2.3自定义单元格:
step1:创建一个类继承于UITableViewCell
step2:将自定义的类的界面设计与一个xib问价绑定在一起
step3:设置显示界面 并连线界面中可以修改的视图为类中公开的属性(所谓连线,其实就是将类中的某一部分公开化,改变一个公开的借口,供使用者赋值)
step4:创建tableView回答第三问时 不再创建UITableViewCell的实例 而是创建自定义的类的实例。
self.navigationItem.titleView=self.scrollView;设置navagationItem的标签的View属性
——————————————————————————————
1 .静态表格
行数不变
方法一:纯代码
特点:使用大量的 if lese 大量硬代码
注意:静态表格的数据依然是可以改变的
方法二:xib
实现思路:在Xib中将静态表格中的每一行都通过拖拽一个对象来进行设计 系统会自动创建xib中包含的所有的控件对象,但是,默认每一个xib文件中只能有一个根元素 被控制器加载 其他拖拽后并有系统创建对象 可以通过将这个对象连线倒控制器中成为属性在进行访问.
2. 动态表格
数据行是可以改变的
方法一:代码方式
核心理念:创建完TableView之后,设置TableView的DateSource和delegate对象 只要符合协议的对象都可以设置为代理方法
选择一:当前控制器遵守协议然后成为tableView的代理
选择二:自己编写代码类 遵守协议 然后创建类的对象 设置为tableview的代理
方法二:xib+代码混合的方式
需求:在一个普通的VC的视图中有两个tableView 上面的tableView从资源库中拖拽。用于显示5行的hello Word,下面的tableView使用代码创建 用于显示7行的HellKitty 让控制器对象同时是这两个tableView的datasource和delegate
****cell.selectionStyle=UITableViewCellSelectionStyleNone;设置Cell的显示样式 当点击是没有任何样式
UITableViewCellSelectionStyleBlue,蓝色
UITableViewCellSelectionStyleGray,灰色
UITableViewCellSelectionStyleDefault默认