код iphone - пользовательская таблица вместо таблицы по умолчанию - PullRequest
1 голос
/ 06 января 2010

Я использую таблицу стилей по умолчанию (UITableViewCellStyleSubtitle) я хочу добавить более одного detailTextLabel в каждую строку,
как я могу настроить его?

Код:

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle
                                   reuseIdentifier:CellIdentifier] autorelease];
    cell.selectionStyle = UITableViewCellSelectionStyleNone;
}

// Leave cells empty if there's no data yet
if (nodeCount > 0)
{
    // Set up the cell...
    ARecord *aRecord = [self.entries objectAtIndex:indexPath.row];

    cell.textLabel.text = aRecord.lDate;
    cell.detailTextLabel.text = aRecord.WNum;

    // Only load cached images; defer new downloads until scrolling ends
    //(!aRecord.appIcon) - use icon
    if (!aRecord.appIcon)
    {
        if (self.tableView.dragging == NO && self.tableView.decelerating == NO)
        {
            [self startIconDownload:aRecord forIndexPath:indexPath];
        }
        // if a download is deferred or in progress, return a placeholder image
        cell.imageView.image = [UIImage imageNamed:@"Placeholder.png"];                
    }
    else
    {
        cell.imageView.image = aRecord.appIcon;
    }

}

return cell;

}

Ответы [ 2 ]

2 голосов
/ 06 января 2010

Лучший способ сделать это - добавить UILabel к cell.contentView. Вы бы сделали это, когда вы изначально создадите ячейку. Я нашел две вещи, которые будут особенно полезны: разместить метку на ячейке таблицы в одноразовом документе в Интерфейсном Разработчике, чтобы определить начальный кадр. Также особенно полезно установить autoresizingMask, чтобы размер метки изменялся соответствующим образом при изменении размера ячейки (из-за автоповорота, перехода в режим редактирования и т. Д.).

Наконец, вам нужно установить более высокое значение rowHeight в табличном представлении для размещения больших ячеек, в противном случае вы получите перекрывающиеся ячейки.

Кроме того, установите tag на ярлыке, чтобы его было легко найти с помощью viewWithTag:, когда вы собираетесь обновить текст.

0 голосов
/ 06 января 2010

Вы можете добавить метки к cell.contentView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...