При использовании UITableViewController метод initWithStyle: автоматически создает базовый UITableView с - согласно документации - "правильными размерами".
Моя проблема в том, что эти «правильные размеры» кажутся 320х460 (размер экрана iPhone), но я помещаю эту пару TableView / Controller в UINavigationController, который сам содержится в UIView, который сам составляет примерно половину высоты экран.
Нет разбора рамок или границ, которые я могу придумать, похоже, правильно сбрасывает размер таблицы, и поэтому он «слишком длинный», что означает, что есть набор строк, которые отталкиваются от нижней части экрана и не видны или недоступны при прокрутке.
Итак, мой вопрос сводится к следующему: как правильно указать UITableViewController изменить размер его компонента UITableView до указанного прямоугольника?
Спасибо!
Обновление Я испробовал все предложенные здесь методы, но безрезультатно, но нашел одну интересную вещь: если я вообще откажусь от UINavigationController (что я еще не готов сделать для производства, но в качестве эксперимента), и добавьте табличное представление как прямое подпредставление включенного представления, которое я упомянул, размер кадра, заданный , соблюдается . самый момент Я заново ввел UINavigationController в микс, независимо от того, был ли он добавлен как подпредставление до или после представления таблицы, и неважно, будет ли alloc / init его до или после представления таблицы добавлено как подпредставление, результат такой же, как и раньше.
Я начинаю подозревать, что UINavigationController не слишком командный игрок ...
Обновление 2 Предложение проверить размер кадра после отображения таблицы на экране было хорошим: оказывается, что контроллер навигации фактически изменяет его размер некоторое время между загрузкой и отображением. Мое решение, в лучшем случае хакерское, состояло в том, чтобы кэшировать кадр, данный при загрузке, и сбрасывать его, если он был изменен в начале tableView: cellForRowAtIndexPath :. Почему там спрашиваешь? Потому что это единственное место, где я нашел работу, вот почему!
Я не считаю это решением, поскольку оно явно неуместно, но в интересах всех, кто читает, оно, похоже, работает.