UIXX-UITableView制作简单表格
来源:互联网 发布:傲剑九阴真经数据 编辑:程序博客网 时间:2024/06/06 00:37
一、创建一个工程,在ViewController.h文件中编写代码:
#import <UIKit/UIKit.h>
//添加两个协议一个是表格视图数据源协议,一个是表格视图代理协议
@interface ViewController :UIViewController<UITableViewDataSource,UITableViewDelegate>
@end
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
//步骤二、
//创建一个区域用来显示表格
CGRect rect =CGRectMake(0,40,300,420);
//初始化表格视图
UITableView *tableView = [[UITableViewalloc]initWithFrame:rect];
//设置表格视图对象的代理
tableView.delegate =self;
//表格视图数据源的代理
tableView.dataSource =self;
//将表格视图添加到当前窗口根视图
[self.viewaddSubview:tableView];
}
//步骤一:
//该代理方法设置表格行数
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return5;
}
//该代理方法用来初始化和返回表格视图的单元格,是最重要的一个方法
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//创建一个字符串作为单元格的标识符
/*单元格的标识符可以看作是一种重用机制,此方法可以从所有已经开辟内存单元格里面,选择一个具有同样标识符的,空闲的单元格
*/
static NSString *identifier =@"cellIndentifier";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
//如果没有可重用单元格创建新的单元格
if (cell ==nil) {
cell = [[UITableViewCellalloc]initWithStyle:
UITableViewCellStyleSubtitle reuseIdentifier:identifier];
//设置单元格标题文字内容
cell.textLabel.text =@"Cell title here.";
//设置单元格文字描述内容
cell.detailTextLabel.text =@"Detail Information here.";
}
return cell;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
运行结果:总结:
一、Controller需要实现两个 delegate,分别是 UITableViewDelegate和 UITableViewDataSource
二、UITableView对象的 delegate要设置为 self
cell重用原理
当滚动列表时,部分UITableViewCell会移出窗口,
UITableView会将窗口外的UITableViewCell放入一个对象池中,等待重用。
当UITableView要求dataSource返回UITableViewCell时,
dataSource会先查看这个对象池,
如果池中有未使用的UITableViewCell,
dataSource会用新的数据配置这个UITableViewCell,
然后返回给UITableView,
重新显示到窗口中,从而避免创建新对象
不同类型的Cell重用
UITableViewCell有个NSString *reuseIdentifier属性,
可以在初始化UITableViewCell的时候传入一个特定的字符串标识来设置reuseIdentifier(一般用UITableViewCell的类名)。
当UITableView要求dataSource返回UITableViewCell时,
先通过一个字符串标识到对象池中查找对应类型的UITableViewCell对象,
如果有,就重用,
如果没有,就传入这个字符串标识来初始化一个UITableViewCell对象
- UIXX-UITableView制作简单表格
- UIXX-UITableView用法及进阶
- 用UITableView制作一个表格视图
- 简单表格的制作
- Iphone UITableView 创建最简单的表格
- UItableView和UISearchBar实现简单表格搜索
- 一个简单的表格制作
- iOS中表格(UITableView)嵌套表格的简单实现
- 14.使用UITableView来制作一个店铺信息表格
- 通用型简单latex模板&表格制作
- html之简单网页表格制作
- html之简单表格网站制作
- 用css3:display制作简单的表格
- HTML 使用表格制作简单的个人简历
- swift之表格控件简单使用(UITableview)
- 在UITableView顶部制作简单的UISegmentControl实例方法
- 使用 UITableView 创建表格应用演练(1)——一个简单的表格应用
- IOS - 自定义表格(UITableView)
- Unity01
- form表单初始化FormData对象方式上传文件
- HandlerMapping和BeanNameUrlHandlerMapping的使用
- 交叉编译zeroMQ与pyzmq
- jdbc核心之PrepareStatement
- UIXX-UITableView制作简单表格
- hdu1158枚举PD
- 《失控》之六--自然之流变
- 有力量的话
- fgetc函数
- LINUX CENTOS7下安装PYTHON3.5.4
- mysql5.7.17安装配置图文教程
- 【机器学习入门】Andrew NG《Machine Learning》课程笔记之三:多元线性回归的梯度下降、特征缩放和正规方程
- HDU-2897-邂逅明下【巴什博弈变形】