cell可以复用 元素加载cell上面只创建一次

来源:互联网 发布:office2016 for mac卡 编辑:程序博客网 时间:2024/05/21 02:21

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

{

   static NSString *CellIdentifier =@"Cell";

    

   UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];



    

   if (cell == nil) {

        cell = [[[UITableViewCellalloc] initWithStyle:UITableViewCellStyleValue1reuseIdentifier:CellIdentifier] autorelease];

        



//在这个里面创建label  其他地方创建的话  函数会执行多次 进来一次  创建一次  

       UILabel *lab=[[UILabelalloc] initWithFrame:CGRectMake(100,0, 220, 45)];

        lab.tag=1+indexPath.row;//设一个tag值  方便寻找

        [cell.contentViewaddSubview:lab];

        [labrelease];

       NSLog(@"11111111");


    }

    

    

//    [[cell.contentView subviews] makeObjectsPerformSelector:@selector(removeFromSuperview)];

    

    

    


    

    

    //找的时候需要特别的注意  此时不能用 self.view  viewWithTag  去找      应该用它的父视图去找  (这样子刷新一次才能出来一次)


   UILabel *label=(UILabel *)[cell.contentViewviewWithTag:1+indexPath.row];//跟楠哥一起掉了半天都没出来



    label.text=[dataArrayobjectAtIndex:indexPath.row];

   NSLog(@"%@",[dataArrayobjectAtIndex:indexPath.row]);


    label.textAlignment=NSTextAlignmentLeft;

    label.backgroundColor=clear;

    

    label.font=[UIFontsystemFontOfSize:13.0f];

    

    cell.textLabel.text=@"对抗赛公告";

    

    cell.textLabel.font=[UIFontboldSystemFontOfSize:15.0f];

        cell.accessoryType =UITableViewCellAccessoryDisclosureIndicator;

    

       

    

   return cell;

}


原创粉丝点击