2012-03-15 4 views
1

Я хочу создать UITableViewCell, который очень похож на стандарт UITableViewCell с UITableViewCellStyleSubtitle. Пользователь может выбрать ячейку, и флажок должен быть установлен на выбранной ячейке.Замените UIImageView на UILabel в UITableViewCell

Я хочу показать UILabel вместо UIImage в левой части ячейки. Я попытался добавить UILabel в contentView. UILabel отображается над текстом и подробной текстовой меткой. Я хотел бы переместить текст и подробный текст вправо, когда мой UILabel расширяется вправо, как и с UIImage.

Я знаю, чтобы создать пользовательскую ячейку в Interface Builder, но тогда я это делаю. Я не знаю, как получить изображение галочки, которое используется при настройке UITableViewCellAccessoryCheckmark. Существует раскрытие, доступное как кнопка (и несколько других), но флажок, кажется, не доступен. Есть ли способ получить значок галочки и использовать его в пользовательской ячейке в Interface Builder? Я не хочу делать свою собственную галочку.

Я искал Интернет и Stackoverflow, но я не могу найти ответ на свой вопрос. Наверное, мне не хватает ключевой части, но я не могу понять это сам.

Есть ли свободные замены с открытым исходным кодом или произведениями для творчества?

ответ

1

Если я все правильно понимаю, кажется, что проще всего было бы не использовать встроенный текст и подробный текст в ячейке, а также настроить эти ярлыки.

Затем в:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath отрегулировать ширину/смещение этикеток по мере необходимости.

Для галочки, если вы не подстраиваясь, где изображение раскрытия кажется, что Вы просто должны быть в состоянии установить его с cell.accessoryType = UITableViewCellAccessoryCheckmark

Надеется, что это ответ на ваш вопрос.

-Brandon

1

Если «галочка» означает коробку с тиком или аналогичную, которую пользователь может включать или выключать с помощью крана, то я боюсь, что вам не повезло, поскольку какао-контакт не содержит такого контроля ,

Однако кататься самостоятельно проще, чем вы думаете. Вам просто нужны пара или png изображения для графики (один для «checked» и один для «unchecked»). В Интернете есть тысячи бесплатных значков и кнопок.

Тогда вы можете создать собственный UIButton так:

UIButton *checkmark = [UIButton buttonWithType:UIButtonTypeCustom]; 
[checkmark setImage:[UIImage imageNamed:@"unchecked"] forState:UIControlStateNormal]; 
[checkmark setImage:[UIImage imageNamed:@"checked"] forState:UIControlStateSelected]; 

Вы можете проверить состояние кнопки (проверено ли или нет), используя selected свойства. Для получения дополнительной информации о selected см. Документацию Apple here.

+0

Я имею в виду галочку, установленную свойством UITableViewCellAccessoryCheckmark –

+0

О, извините. Тогда я лаяю неправильное дерево! –

1

Вместо создания пользовательского ячейки программным способом.

Образец кода here.

Кроме того, для галочки вы можете добавить

cell.accessoryType = UITableViewCellAccessoryCheckmark

к вашему

tableViewCellWithReuseIdentifier или

cellForRowAtIndexPath зависимости от того, удовлетворит ваше приложение.

Смежные вопросы