У меня есть UITableView с несколькими ячейками.Я хочу выровнять вещи вроде квитанции.
т.е. Название ------------ Цена
, где Название выравнивается по левому краю, а Цена - по правому краю.
Как бы я это сделал?
При создании ячеек используйте -[UITableViewCell initWithStyle:UITableViewCellStyleValue1 reuseIndicator:Cell]; В соответствии с документацией:
-[UITableViewCell initWithStyle:UITableViewCellStyleValue1 reuseIndicator:Cell];
UITableViewCellStyleValue1 Стиль для ячейки с меткой в левой части ячейки свыровненный по левому краю и черный текст;справа находится метка, которая имеет синий текст поменьше и выровнена по правому краю.Приложение «Настройки» использует ячейки в этом стиле.
Затем вы можете использовать свойства cell.textLabel и cell.detailTextLabel, чтобы задать текст и изменить шрифт и цвет текста двух меток.
cell.textLabel
cell.detailTextLabel
Вы должны вручную расположить метки в ячейке. Выравнивание по левому краю очевидно, чтобы выполнить выравнивание по правому краю, вы можете рассчитать ширину текста с помощью -[NSString sizeWithFont:forWidth:lineBreakMode:] и установить координату X правой метки в ячейке с помощью cellWidth-textWidth-rightMargin.
-[NSString sizeWithFont:forWidth:lineBreakMode:]
cellWidth-textWidth-rightMargin