在单元格中添加第三个标签?

时间:2012-08-27 18:10:19

标签: iphone label tableview cell

正如标题所说,我希望在我的单元格中有3个标签(在tableView中)。从下面的代码中可以看出,我目前只有2个标签,名称为textLabel,book为detailTextLabel。但是如果我也想将章作为标签(tabelView单元格中的自己的行)呢?实现这个的最佳方法是什么?

输出应该在tableView中显示如下:

名称

预订

/谢谢!

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

if (cell == nil)
{
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
Bookmark *item = [self.items objectAtIndex:indexPath.row];

NSArray *chunks = [item.name componentsSeparatedByString: @","];

NSString *name;
NSString *book;
NSString *chapter;

if ([chunks count] > 0)
{
    name = [chunks objectAtIndex:0];
    if ([chunks count] > 1)
    {
        book = [chunks objectAtIndex:1];
        if ([chunks count] > 2)
        {
            chapter = [chunks objectAtIndex:2];
        }
    }
}

cell.textLabel.text = name;
cell.detailTextLabel.text = book;

3 个答案:

答案 0 :(得分:1)

听起来你想要一个自定义的UITableViewCell,你可以添加任何你想要的东西。从那里只需命名您放入其中的标签并相应地编写代码以使用cellForRowAtIndexPath方法填充它们。

答案 1 :(得分:0)

创建自定义UIView并将其作为子视图添加到单元格的contentView中。在此自定义视图中,根据需要添加尽可能多的UILalels。您实际上不必创建自定义视图来执行此操作,但它允许更多功能。

以下是一些实现三个标签的基本代码。

UIView * pNewContentView= [[UIView alloc] initWithFrame:cell.contentView.bounds];
CGRect labelFrame= pNewContentView.bounds;
labelFrame.size.width= labelFrame.size.width * 0.33;

UILabel* pLabel1=[[UILabel alloc] initWithFrame:labelFrame];
[pNewContentView addSubview:pLabel1];

labelFrame.origin.x= labelFrame.size.width;
UILabel* pLabel2=[[UILabel alloc] initWithFrame:labelFrame];
[pNewContentView addSubview:pLabel2];

labelFrame.origin.x= labelFrame.origin.x + labelFrame.size.width;
UILabel* pLabel3=[[UILabel alloc] initWithFrame:labelFrame];
[pNewContentView addSubview:pLabel3];

[cell.contentView addSubview:pNewContentView];

答案 2 :(得分:0)

如果您需要的只是另一个标签,那么您可以执行标记所述的操作,创建子视图并将其设置为您的单元格。

如果你想拥有一些可以做得更多的东西,你需要的是一个自定义的UITableViewCell。您可以定义按钮和其他控件。看一下this文件apple提供的内容。本文档可以真正帮助理解UITableViewCell的工作原理,因此值得一读。