tableViewcell

来源:互联网 发布:西红柿pk10计划软件 编辑:程序博客网 时间:2024/05/21 11:08
#import "RootViewController.h"#import "RootView.h"@interface RootViewController () <UITableViewDataSource>@property (nonatomic, retain) RootView *rootView;@property (nonatomic, retain) NSArray *bigArray;@end@implementation RootViewController#pragma mark - 设置自定义视图- (void)loadView{    self.rootView = [[[RootView alloc] initWithFrame:[UIScreen mainScreen].bounds] autorelease];    self.view = _rootView;}- (void)viewDidLoad{    [super viewDidLoad];        self.title = @"设置";        // 大数组初始化    self.bigArray = @[                      @[@"北京", @"上海", @"广州", @"南京", @"道长"],                      @[@"daozhang", @"feifan", @"kengshen"],                      @[@"guanying", @"gege"],                      @[@"minhong", @"ma yun", @"nai cha mei", @"bingbing", @"bbbb", @"yuan you"],                      @[@"minhong", @"ma yun", @"nai cha mei", @"bingbing", @"bbbb", @"yuan you"]                      ];                // 设置数据源(代理)    // 设置当前控制器为表示图的数据源    _rootView.tableView.dataSource = self;                }#pragma mark - 实现UITableViewDataSource协议方法#pragma mark 设置有多少分区- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{    // 大数组元素个数就是分区个数    return _bigArray.count;}#pragma mark 设置分区有多少行- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{    // 先根据section获取大数组中的小数组    NSArray *itemArray = _bigArray[section];    // 返回小数组元素个数    return itemArray.count;}#pragma mark 设置每行上显示的内容- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{    /*    UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"songsong"];        // 给cell上设置文字    // 先通过indexPath.section(分组的下标),获取小数组    NSArray *itemArray = _bigArray[indexPath.section];    // 再通过indexPath.row(每一行在组内的下标),获取小数组中的内容    NSString *str = itemArray[indexPath.row];    // 最后,将内容添加到textLabel上    cell.textLabel.text = str;            cell.imageView.image = [UIImage imageNamed:@"cell_head.png"];    cell.detailTextLabel.text = @"Detail Text";            return cell;     */        // 声明静态字符串变量,保证只初始化一次    static NSString *cellIdetifier = @"cellIdetifier";        // 1.先根据重用标示符去重用队列中查找,是否有可用的cell    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdetifier];        // 2.判断是否有可用的cell    if (cell == nil) {        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdetifier] autorelease];        NSLog(@"全新的cell");    }        // 3.使用    cell.textLabel.text = _bigArray[indexPath.section][indexPath.row];        // 4.返回    return cell;}#pragma mark - 设置快速索引,内容无所谓,根据数组下标进行跳转- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView{    return @[@"a", @"b", @"c", @"d", @"e"];}#pragma mark 设置头标题- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{    return @"头标题";}#pragma mark 设置尾部//- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section//{//    return @"这里是尾部,填写当前分组的详细描述信息";//}- (void)didReceiveMemoryWarning {    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}#pragma mark - 重写#pragma mark dealloc- (void)dealloc{    [_rootView release];    [_bigArray release];        [super dealloc];}

0 0
原创粉丝点击