2013-03-09 2 views
0

Я разрабатываю приложение iPad, где у меня есть экран с UITableView, размещенный в UIScrollView. Ведущее пространство и конечное пространство UITableView привязаны к супервину.Неразрешимая область в UITableView в альбомной ориентации

Я использую Autolayout в своем проекте.

Когда этот экран появляется в ландшафтном режиме или поворачивается на него, все видимые элементы UITableView изменяются правильно. Однако площадь после x = 768pt является неприкосновенной. Это определенно область, потому что начало редактируемых элементов (текстовое представление и текстовое поле) ощутимо. Я проверил contentSize таблицы, это нормально (1024 в моем случае). Также, когда я поворачиваю iPad от пейзажа к портрету contentSize таблицы все еще остается пейзаж (1024). Я пробовал решение из этой темы: bug in UITableView layout after orientation change и это сработало. Не знаю, связано ли это с моей проблемой.

Я попытался разместить обычный просмотр вместо моего UITableView. На этом экране после поворота область касания была в порядке. Однако, когда я разместил свою таблицу на этом представлении, правая область все еще не реагировала.

Записная книжка свойств таблицыToBounds установлена ​​в YES, поэтому кажется, что контент не становится за пределами UITableView.

Укажите, что может вызвать эту проблему. Прямо сейчас у меня совершенно нет идей, что может вызвать это.

ответ

2

Я нашел решение. Проблема заключалась в переопределении метода - (void) layoutSubviews в моей пользовательской ячейке. Я просто забыл называть [super layoutSubviews] в нем.

Никогда не забудьте вызвать [super layoutSubviews] в любом нестандартном представлении.

Надеюсь, что мое решение поможет кому-то не тратить часы на простой вопрос.