记录一个菜鸟的iOS学习之旅,如能帮助正在学习的你,亦枫不胜荣幸;如路过的大神如指教几句,亦枫感激涕淋!
表视图 UITableView
类比于Android系统中的 ListView
控件,是iOS开发中使用最频繁的视图控件。
基本组成
表头视图(Header View)
列表视图的头信息,位于表视图的顶部,常见的有:上拉刷新列表头视图;表脚视图(Footer View)
列表视图的脚信息,位于表视图的底部,常见的有:下拉加载更多;
单元格(Cell)
组成表视图的每一行的单位视图;节(Section)
多行单元格组成,有节头和节尾;节头(Section Header)
节的头部信息;节尾(Section Footer)
节的尾部信息;
表视图分类
-
普通表视图
常用于动态表,即表视图数据不固定,通常来源于服务器动态数据库,如网易新闻客户端的新闻列表数据;
-
分组表视图
常用于静态表,即表视图数据较为固定,更新不频繁,通常用于app的设置界面或“我”的界面,在iPhone手机中,系统设置界面较为常见。
除了上面两种视图样式,iOS系统提供的表视图中还包含有索引列、选择列和搜索栏样式,如图所示:
单元格组成
基本的单元格组成元素包括图片Image,标题Title,副标题SubTitle和扩展视图,我们也可以自己设计视图,添加更多的元素和设计更多的样式来丰富我们的表视图。其中,系统内置的扩展视图是由枚举类 UITableViewCellAccessoryType
定义的,包括如下常量内容:
UITableViewCellAccessoryNone
没有扩展视图;UITableViewCellAccessoryDisclosureIndicator
扩展指示器,图标样式为一个大于号( > )的样式;UITableViewCellAccessoryDetailDisclosureButton
细节展示按钮,图标样式为感叹号( ! )的样式;UITableViewCellAccessoryCheckmark
选择指示器,图标样式为对勾( √ )的样式;UITableViewCellStyleDefault
默认样式,只有图片和主标题控件;UITableViewCellStyleValue1
无图标带副标题的样式一;UITableViewCellStyleValue2
无图标带副标题的样式二;
数据源协议和委托协议
类似Android系统中的适配器(Adapter)功能一样,iOS系统中的表视图需要实现数据源协议和委托协议。数据源协议是 UITableViewDataSource
类,其中必须实现的两个方法是: tableView:numberOfRowsInSection:
和 tableView:cellForRowAtIndexPath:
,用于定义表视图的数据源和视图样式 ;委托协议是 UITableViewDelegate
,用于定义节头和节尾视图以及响应触摸事件。
表视图作为iOS最常用的控件,能够进行很多样式和功能的拓展,在后续文章中我们一点一点的深入学习。