介绍
简而言之,TableView是一个被分成不同部分的滚动视图,每部分又进一步被分成行。每行是一个UITableViewCell类的实例。通过些类的子类,可以创建自定义TableView的行。
使用TableView是一个向用户项目列表的理想方法。你可以把图片、文本和其他任何东西嵌入TableView单元格,可以自定义它们的高度、形状、分组、或更多TableView结构的简易性使用其高度可自定义。
一个TableView可以输入TableView数据源的数据,你会接收到各种事件并用TableView委托对象来控制其物理外观。这些分别在UITableViewDataSource和UITableViewDelegate的协议来定义。
尽管UITableView实例将UIScrollView子类化,TableView只能垂直滚动,这更大程序上是一个特点而非局限。
实例化TableView
问题
在你的UI中放置一个TableView.
方案
实例化一个UITableView类的对象并把它一个子视图添加到你的视图中。
讨论
有2个办法可以实例化TableView:
- 通过代码
- 使用界面生成器(Interface Builder)
如果你使用界面生成器,创建一个TableView就是简单的把一个TableView从对象库拖拽到你的.xib文件中。如果你使用代码创建组建更顺手的话,也没有问题。你必须做的事情就是把UITableView类的一个对象实例化,让我们通过在视图控制器的头文件中定义我们的TableView开始:
创建视图控制器就像分配和初始化UITableView的实例一样简单:
self.view.backgroundColor = [UIColor whiteColor];
self.myTableView = [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStylePlain];
[self.view addSubView:self.myTableView];
}
视图控制器中初始值设定项inti偗e:style:的样式参数允许我们需要哪种类型的TableView.有2种风格我们可以选择。
- UITableViewStylePlain
创建一个没有背影图片的空白TableView
- UITableViewStyleGrouped
创建一个有背影图片和圆角组边框的TableView,类似于Settings app。
如果你现在在iPhone模拟器上运行APP,将看到没有填充TableView单元格的TableView放在那里。
图4-1. 一个没有内容的空白Table View