Ответ 1
Я нашел решение! Просто установите:
self.automaticallyAdjustsScrollViewInsets = NO;
на контроллере представления, который имеет вид прокрутки в виде представления...
У меня странное поведение с моими UIViews, когда я перехожу на iOS7. Кажется, что им отправлено сообщение с сокращением на 20 пикселей. Я удалил строку состояния из всех моих XIB файлов и явно установил ее в скрытое в делете приложения. Кажется, мой UINavigationController отправил сообщение:
_computeAndApplyScrollContentInsetDeltaForViewController
который, в свою очередь, отправляет сообщения в мои просмотры прокрутки
_adjustContentOffsetIfNecessary
которые устанавливают смещение на -20 пикселей... Это не должно произойти, потому что нет никакой причины для этой функции корректировать что-либо на эту сумму.
Есть ли у кого-нибудь идея, как это исправить?
Я нашел решение! Просто установите:
self.automaticallyAdjustsScrollViewInsets = NO;
на контроллере представления, который имеет вид прокрутки в виде представления...
20 пикселей (или, может быть, точек), которые звучат как строка состояния, когда НЕ принимает телефонный звонок (я считаю, 40 при получении вызова). Не уверен, что это исправит вашу проблему, но у меня возникла проблема, когда в iOS7 моя строка состояния не скрывалась. Я спрятал его программно, и он все еще отображается в iOS7, но при запуске в iOS6 строка состояния скроется соответствующим образом. Вы должны перейти к plist и добавить следующее: "просмотреть статусную строку состояния на основе контроллера" и установить значение NO.