1

我想以垂直顺序显示我的记录UITableViewCell

这是我的代码:

cell.textLabel.text=[NSString stringWithFormat:@"%d %@ %@",objProp.contid,objProp.contname,objProp.contno];

我想这样显示我的记录。

1  

sanjeet

9876556789
4

2 回答 2

2

我个人解决这个问题的方法是:

我会创建一个自定义 UITableViewCell 子类。我将在 UITableViewCell 中有三个标签,垂直排列。

self.labelA     = [[UILabel alloc] init];
self.labelB     = [[UILabel alloc] init];
self.labelC     = [[UILabel alloc] init];
NSDictionary *viewsDictionary = @{@"labelA" : self.labelA,
                                  @"labelB" : self.labelB,
                                  @"labelC" : self.labelC};
[self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-[labelA]-|"
                                                                         options:kNilOptions
                                                                         metrics:nil
                                                                           views:viewsDictionary]];
[self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-[labelA]-[labelB]-[labelC]-|"
                                                                         options:NSLayoutFormatAlignAllLeading | NSLayoutFormatAlignAllTrailing
                                                                         metrics:nil
                                                                           views:viewsDictionary]];

然后我会为每个标签设置适当的标签。

我相信您要做的是以可以引入新行的方式设置默认 UITableViewCell 的 textLabel 。例如:

UITableViewCell *tableViewCell;
tableViewCell.textLabel.numberOfLines   = 3;
tableViewCell.textLabel.lineBreakMode   = kNilOptions;
tableViewCell.textLabel.text            = [[NSString alloc] initWithFormat:@"%@\n%@\n%@", variableA, variableB, variableC];

就像我说的,更好的方法是创建一个自定义 UITableViewCell 子类。

于 2013-11-12T08:44:40.860 回答
1

您需要创建自定义tableviewcell以垂直顺序显示。如果您正在使用情节提要,请在表格视图单元格内容视图中拖动 3 个标签,并为每个标签提供不同的标签,并[cell viewWithTag:]在您的内部使用方法cellForRowAtIndexPath:

例子:

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

 UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"];


    UILabel *id = (UILabel *)[cell viewWithTag:1];
    id.text = [NSString stringWithFormat=@"%d",objProp.contid];

    UILabel *name = (UILabel *)[cell viewWithTag:2];
    name.text = [NSString stringWithFormat=@"%@",objProp.contname];

    UILabel *contact = (UILabel *)[cell viewWithTag:3];
    contact.text = [NSString stringWithFormat=@"%@", objProp.contno];

    return cell;
}
于 2013-11-12T08:40:22.797 回答