如何禁用dequeueReusableCell,以使所有tableviewCell视图加载?

时间:2014-02-14 08:07:59

标签: ios uitableview tableviewcell

uitableview cell重用细胞...但我不想重复使用细胞。 tableView正在滚动删除单元格中的文本。 所以我想在didloadview中创建所有单元格。 怎么写这段代码?? !!

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
//test
setting_detail_cell *customCell = (setting_detail_cell*)[tableView cellForRowAtIndexPath:indexPath];***

NSString *keyword1 = [[customCell Key1] text];
//
setting_cell=[tableView dequeueReusableCellWithIdentifier:CellTableIdentifier];

rowData = self.PPT_Setting[indexPath.row];
[setting_cell setNumber:rowData[@"page_num"]];
    @try {
        rowData_keyword =self.Keyword_list[indexPath.row];
        setting_cell.Key1.text = rowData_keyword[@"key1"];
        setting_cell.Key2.text = rowData_keyword[@"key2"];
        setting_cell.Key3.text = rowData_keyword[@"key3"];
        NSLog(@"index1 : %d",indexPath.row);;
        NSLog(@"cell : %@",setting_cell);

        if ([rowData_keyword[@"key1"] isEqualToString:@"(null)"] == YES) {
            setting_cell.Key1.text = @" ";
        }
        if ([rowData_keyword[@"key2"] isEqualToString:@"(null)"] == YES) {
            setting_cell.Key2.text = @" ";
        }
        if ([rowData_keyword[@"key3"] isEqualToString:@"(null)"] == YES) {
            setting_cell.Key3.text = @" ";
        }
    }@catch (NSException *exception) {
        NSLog(@"%@",exception);
    }

return  setting_cell;
}

2 个答案:

答案 0 :(得分:0)

查找单元格是否重用。因为你的代码单元没有被重用。

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath (NSIndexPath*)indexPath 
{
    static NSString *cellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier forIndexPath:indexPath];

    if (!cell)
        cell = [[UITableViewCell alloc] initWithStyle:yourStyle reuseIdentifier: cellIdentifier];

    return cell;
}

用于唯一身份识别

UITableViewCellAccessoryCheckmark类型

答案 1 :(得分:0)

如果要设置大量单元格并且在设置单元格时使用了太多内存,则会导致内存开销。为了避免这种苹果使用可重复使用的细胞。

如果您确定需要静态分配的单元格,则创建单元格并将其保留在数组中,然后以相应的索引返回单元格(不建议使用此方法)。