Вы можете определить статический набор переменных в пользовательской реализации UITableViewCell, которая устанавливает эти виды параметров в layoutSubviews
, если и только если не установлено. Обязательно сначала позвоните [super layoutSubviews]
.
Таким образом, вы наследуете устройства по умолчанию, и вам никогда не придется удивляться.
AFAIK, ширина ячейки self.contentView.frame.size.width
. Вы можете использовать self.textLabel.frame.size.width
и self.detailTextLabel.frame.size.width
и self.accessoryView.frame.size.width
+ отступы между каждым, чтобы выяснить детали. Я не на 100% на дополнение. Но вы можете рассчитать заполнение, обнаружив разницу между шириной метки и шириной кадра contentView.
К сожалению. Я забыл, что detailTextLabel
размеры ячейки всегда меняются; и определенно не полагаться на период. Вы можете получить ширину метки на основе ширины владеющего UIViewController и ячеек textLabel
. Поскольку расчеты находятся на уровне контроллера, вы будете знать, сгруппирован ли tableView. И если это так, вы можете просто уменьшить ширину в 0,8 раза и вычесть ширину textLabel
.
Аналогично для шрифтов: self.textLabel.font.pointSize
и self.detailTextLabel.font.pointSize
.