Вы можете установить cell.detailTextLabel.numberOfLines = 2
, чтобы получить 2 строки там. Однако я сомневаюсь, что UITableViewCell будет размещать метки, как вы ожидаете в этом случае. Возможно, вы захотите создать подкласс UITableViewCell и переопределить -layoutSubviews
, чтобы расположить метки так, как вы хотите. Вы можете позвонить [super layoutSubviews]
, а затем просто настроить позиции меток. Возможно, вы захотите использовать -[NSString sizeWithFont:constrainedToSize:lineBreakMode:]
для вычисления правильного размера для текстовой метки.
В качестве альтернативы, вместо создания подкласса UITableViewCell, вы можете попробовать выполнить настройки в -tableView:willDisplayCell:forRowAtIndexPath:
, хотя, если ячейка когда-либо решит, что ей нужно изменить расположение, ваши настройки будут удалены. Я рекомендую вам использовать подход подклассов.
Редактировать : Кстати, с подходом подкласса, все, что вам нужно сделать, это изменить [UITableViewCell alloc]
на [MyTableViewCellSubclass alloc]
. Поскольку вы не вводите новые методы или свойства, переменная все еще может оставаться типизированной как UITableViewCell, и вам не придется изменять какой-либо другой код.