当我还使用自定义表格查看单元格时,如何通过NSArray设置表格视图的文本?

时间:2012-08-14 04:55:44

标签: iphone ios xcode uitableview ios4

我有一个通过自定义表格视图单元设计的UITable View。我希望每个单元格上的文本都不同,所以我在我的CustomCell中添加了一个label,然后将IBOutlet连接到它上面,但是我很难把头缠绕在代码的逻辑部分,任何帮助将不胜感激。到目前为止我有这个:

//这是我的表视图控制器类。

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

    if (cell == nil) {
        NSArray *object = [[NSBundle mainBundle]loadNibNamed:@"TableOfContentsCell" owner:self options:nil];

        for (id currentObject in object) {
            if ([currentObject isKindOfClass:[UITableViewCell class]]) {

            cell = (TableOfContentsCell *)currentObject;
            break;
            }
        }

    }

    //cell.textLabel.textColor = [UIColor whiteColor];

    // Configure the cell...

    return cell;
}


//This is in my Custom Table View Cell Class.

-(void)setTableText{
cellLabel.text = [table.tableCellText objectAtIndex:0];
}

我无法弄清楚如何在我想要的文本设置文本时,是在数组内部!提前谢谢!

4 个答案:

答案 0 :(得分:1)

我不清楚为什么要将数据加载到自定义单元格中的标签上,请澄清一下。 其次,在注释配置单元格下方,您可以自定义单元格。就像你设置textColor一样。 只需在TABLE VIEW CONTROLLER CLASS中声明该数组

并编写以下代码

    // Configure the cell...

    cell.cellLabel.text = [yourArrayName objectAtIndex:indexPath.row];
希望它有所帮助。

答案 1 :(得分:0)

只需从tableView:cellForRowAtIndexPath

填充它
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    ...
    // Configure the cell...
    cellLabel.text = [table.tableCellText objectAtIndex:indexPath.row];
    return cell;
}

只需确保tableview可以访问table.tableCellText。

答案 2 :(得分:0)

不需要单独的方法。在qn的代码中有两行注释...(//配置单元格......) 将此代码添加到部分

假设您的自定义单元格中有两个标签 然后为它们添加标签(此处为1和2)并通过viewwithtag:method

在代码中获取它的引用
UILabel *label=(UILabel *)[cell viewWithTag:1];
[label setText:@"2"];

UILabel *label2=(UILabel *)[cell viewWithTag:2];
[label2 setText:@"sasd"];

您必须保留的条件是必须唯一标记单元格的内容,并且使用此方法可以获取自定义单元格中任何视图的引用

快乐编码

答案 3 :(得分:0)

根据需要创建自定义单元格类。然后。

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

 TableCustomCell *cell = (TableCustomCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

//.....................

cell.yourLabel.text = [yourArray objectAtIndex:indexPath.row];

return cell;
}