ios UITableView的简单使用(一)

UITableView的使用:
1、在@interface中声明UITableView的属性控件和数组
代码:

#pragma mark - 表格
@property (nonatomic,strong)UITableView *tableView;
#pragma mark - 数组
@property (nonatomic,strong)NSMutableArray *dataArray;

2、在@imolementation中实现,或者叫初始化表格和数组对象,代码:

//懒加载
- (UITableView *)tableView{
    if (_tableView == nil) {
        _tableView = [[UITableView alloc]initWithFrame:self.view.frame style:UITableViewStylePlain];
        
        _tableView.delegate = self;//遵循协议
        _tableView.dataSource = self;//遵循数据源
    }
    return _tableView;
}
- (NSMutableArray *)dataArray{
    if (_dataArray == nil) {
        _dataArray = [NSMutableArray array];//初始化数组
    }
    return _dataArray;
}

3、遵循数据源(UITableViewDataSource)和协议(UITableViewDelegate),代码:

@interface ViewController ()@interface ViewController ()
#pragma mark - 表格
@property (nonatomic,strong)UITableView *tableView;
#pragma mark - 数组
@property (nonatomic,strong)NSMutableArray *dataArray;
@end

4、实现数据源(UITableViewDataSource)和代理(UITableViewDelegate)方法,代码:

#pragma mark - UITableViewDelegate,UITableViewDataSource
//分区,组数
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    return 1;
}
//每个分区的行数
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return self.dataArray.count;
}
//每个单元格的内容
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
//    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cellID"];
    /*系统单元格
    if (cell == nil) {
        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"cellID"];
    }
//    cell.textLabel.text = self.dataArray[indexPath.row];
    Model *m = self.dataArray[indexPath.row];//取出数组元素
    cell.textLabel.text = [NSString stringWithFormat:@"姓名:%@,年龄:%@",m.name,m.age];
    */
//自定义Cell,需要注册
    TableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"TableViewCellID" forIndexPath:indexPath];
    
    
    return cell;
}

注意:使用自定义cell时,注册方法在viewDidLoad中添加,此外,需要在viewDidLoad中将表格添加到主视图。代码:

- (void)viewDidLoad {
    [super viewDidLoad];
    [self.view addSubview:self.tableView];//添加表格到视图
    //添加数组元素
    Model *m = [[Model alloc]init];
    m.name = @"铁甲";
    m.age = @"16";
    [self.dataArray addObject:m];
//    [self.dataArray addObject:@"第一组"];
//    [self.dataArray addObject:@"第二组"];
//注册cell
    [self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"TableViewCellID"];
}

补充,模型中的代码如下:

@interface Model : NSObject
@property (nonatomic,strong)NSString *name;//姓名
@property (nonatomic,strong)NSString *age;//年龄
@end

你可能感兴趣的:(ios UITableView的简单使用(一))