美文网首页
IOS开发 UITableView协议

IOS开发 UITableView协议

作者: 奔跑的小小鱼 | 来源:发表于2017-06-05 21:48 被阅读52次

    本节学习内容:

    1.UItableView协议基础

    2.UITablView协议的功能

    3.UITableView协议的使用

    UITableView协议

    heightForRowAtIndexPath:获得单元格高度协议

    heightForHeaderInSecion:数据视图头部高度协议

    heightForFooterInSection:数据视图尾部高度协义

    titleForFooterInSection:数据视图尾部的标题协议

    titleForGeaderInSection:数据视图头部标题协议


    【ViewController.h】

    #import<UIKit/UIKit.h>

    @interface ViewController:UIViewController<

    //数据代理协义

    UITableViewDataSource,

    //普通代理协义

    UITableViewDElegate

    >

    {

    //定义数据视图对象

    UITableView* _tableView;

    //声明一个数据源

    NSMutableArray* _arrayData;

    }

    【ViewController.m】

    #import"ViewController.h"

    @interface viewController()

    @end

    @implementation ViewController

    -(void)viewDidLoad{

    [super viewDidLoad];

    //创建数据视图对象

    _tableView=[[UITableView alloc]initWithFrame:CGRectMake(0,40,320,536)style:UITableViewStyleGrouped];

    //设置代理对象

    _tableView.delegate=self;

    //设置数据代理对象

    _tableView.dataSource=self;

    //数据视图

    [self.view addSubview:_tableView]

    //创建一个可变数组

    _arrayData=[[NSMutableArray alloc]init];

    for(int i='A';i<='Z';i++){

    //定义小数组

    NSMutableArray* arraySmall=[[NSMutableArray alloc]init];

    for(int j=1;j<=5;j++){

    NSString*str=[NSString stringWithFormat:@"%c%d",i,j];

    [arraySmall addObject:str];

    }

    //生成一个二维数组

    [_arrayData addObject:arraySmall];

    }

    //获取组数

    -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{

    return  _arrayData.count;

    }

    //获取每组的元素个数

    -(NSInteger)tableView:(UITableView*)tableView numberOfRowsInSection:(NSIngeger)section{

    NSInteger numRow=[[_arrData objectAtIndex:section]coun];

    return numRow;

    }

    -(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

    NSString* str=@"cell";

    UITableViewCell* cell=[_tableview dequeueReusableCellWithIdentifier:str];

    if(cell==nil){

    cell=[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentiter:str];

    }

    cell.textLable.text=_arrayData[indexPath.section][indexPath.row];

    return cell;

    }

    }

    //获取高度

    -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{

    return 100;

    }

    //获取每组头部标题

    -(NSString*)tableView:(UITableView*)tableview titleForHeaderInSection:(NSInteger)section{

    return @"头部标题"

    }

    //获取每组尾部标题

    -(NSString*)tableView:(UITableView*)tableview titleForFooterInSection:(NSInteger)section{

    return @"尾部标题"

    }

    //获取头部高度

    -(CGFloat)tableView:(UITableView *)tableView heightForGeaderInSection:(NSInteger)section{

    return 40;

    }

    //获取尾部高度

    -(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{

    return 60;

    }

    相关文章

      网友评论

          本文标题:IOS开发 UITableView协议

          本文链接:https://www.haomeiwen.com/subject/ivnufxtx.html