如何在UITableViewCell中有两个单独的detailTextLabel值?

时间:2014-11-11 21:54:28

标签: ios objective-c uitableview

我目前在表格中的每个单元格中都有一个detailTextLabel值,但我希望它有两个,一个用于价格,一个用于条件。这就是我目前设置的方式:

// price of the item
cell.detailTextLabel.text = [NSString stringWithFormat:@"$%@", _matchCenterArray[indexPath.section][@"Top 3"][indexPath.row+1][@"Price"]];
cell.detailTextLabel.textColor = [UIColor colorWithRed:0/255.0f green:127/255.0f blue:31/255.0f alpha:1.0f];

我希望条件成为第二个detailTextLabel,颜色与价格不同,并且坐在它下面。有没有办法包含辅助细节,还是我必须使用自定义UITableViewCell?如果是第二个选项,我将如何进行此操作?

2 个答案:

答案 0 :(得分:1)

就个人而言,我会将UITableViewCell子类化,并将您需要的任何UILabel放入其中。然后,您可以将这两个标签作为IBOutlets连接到单元控制器.h文件,以允许您从表视图控制器管理它们。

如果您正在使用Storyboard并且已插入表格视图,如果您单击顶部的原型单元格(仅一次)并打开身份检查器,您将在顶部看到一个类别" Custom Class& #34 ;.一旦你编写代码/设计你的自定义单元格,你将把你给它的类名放在这里开始使用它。您必须确保在表视图控制器实现中的cellForRowAtIndexPath:方法中正确设置单元格。

本视频中的绅士说明了这一点(UITableViewCell的子类化跳至8:40)。他可能会以不同于其他人的方式做事,但总的原则是一样的。 Video

答案 1 :(得分:0)

最简单的方法是在单元格内容视图中添加另一个标签。 替代方法是创建自己的UITableviewcell,其中有3个标签为2