Нещодавно я завантажив Xcode 5 DP, щоб перевірити свої програми в iOS 7. Перше, що я помітив і підтвердив - це те, що межі мого перегляду не завжди змінюються для врахування рядка стану та панелі навігації.
У viewDidLayoutSubviews
друкуються межі перегляду:
{{0, 0}, {320, 568}}
Це призводить до того, що мій вміст з’являється під навігаційною панеллю та рядком стану.
Я знаю, що міг би сам пояснити висоту, отримуючи висоту головного екрана, віднімаючи висоту рядка стану та висоту панелі навігації, але це здається зайвою зайвою роботою.
Як я можу виправити це питання?
Оновлення:
Я знайшов рішення для цієї конкретної проблеми. Встановіть для напівпрозорого властивості навігаційної панелі значення НІ:
self.navigationController.navigationBar.translucent = NO;
Це дозволить уникнути обрамлення пода під навігаційною панеллю та рядком стану.
Однак я не знайшов виправлення для випадку, коли потрібно, щоб панель навігації була напівпрозорою. Наприклад, переглядаючи фотографію на весь екран, я хочу, щоб панель навігації була напівпрозорою, а вигляд був обрамлений під нею. Це працює, але коли я перемикаю показ / приховування панелі навігації, я відчував ще більш незначні результати. Перший підпогляд (UIScrollView) змінює своє походження, коли походження змінюється щоразу.