UITableViewCell contentView ширина меняется в iOS5? - PullRequest
1 голос
/ 14 октября 2011

На iOS <5.0 этот код для моей ячейки сгруппированной таблицы: </p>

NSLog(@"%f", cell.contentView.bounds.size.width);

возвращает 302.

Но на iOS5 тот же код возвращает 320 (то есть, включаяполе расположения сгруппированных ячеек по ширине).

Это ожидаемое поведение?

И если да, то как тогда надежно получить ширину сгруппированной ячейки табличного представления, не включаямаржа

1 Ответ

2 голосов
/ 20 октября 2011

Я думаю, что это изменение связано с синхронизацией макета ячейки, а ширина 302 задается в методе viewWill * или viewDid *, когда больше известно об аксессуарах, стиле таблицы и т. Д.

Когда я столкнулся с этим, я исправил его, установив свойство autoresizingMask соответствующим образом, когда contentView был настроен на значение 302 позже в коде.

Поскольку я получал ширину границ, чтобы я мог добавить текстовое поле с правой стороны ячейки, просто добавив:

valueTextField.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin;

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

Надеюсь, это поможет вам!

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