表格在现在的app中相当常见了,最近回顾自己之前的一个demo的时候发现关于表格的知识忘了不少,所以还是写下来,加深记忆。
这个demo是使用storyboard构建界面的,首先我们拖一个TableViewController出来,注意,对于新手这里有个坑,这个拖出来的ViewController已经与view建立了关联--dataSource和delegate。这两个关联必不可少,因为dataSource使得ViewController作为数据源,delegate实现代理方法,Xcode默认帮我们实现了这两个协议。但是如果是普通的ViewController则需要我们手动去遵循这两个协议并在storyboard中建立连接。
接下来实现UITableViewDataSource协议中的三个方法:
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 30 //返回表格总数(一共多少行)
}
override func numberOfSections(in tableView: UITableView) -> Int {
return 1 //返回表格组数(也可不写,在表格类型设置为Group时有效)
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
//加入cell
这里要注意一下:iOS的表格row和cell的区别,row是表格一共的行数,如果你的表格有30行,那就有30个row,cell不一样,cell是用来显示数据的,它是一个view,它的数量是固定的,假如屏幕一次只能显示10个cell,那么cell的个数就是10,当cell和row的个数不同时,就会涉及到cell的重用。
注意:使用storyboard建立view的话还需要在storyboard中设置cell的Identifier。
今天先写到这儿。