Я немного раздражен. У меня есть приложение со строкой состояния, видимой в главном окне. Поскольку я хотел бы динамически настраивать свои виды и размеры их кадров (например, строка состояния занимает 40 пикселей во время телефонного звонка, например).
Я могу сделать одно из двух:
[[UIScreen mainScreen] bounds];
[[UIScreen mainScreen] applicationFrame];
Действительно раздражает, что эти два выводят два разных набора значений, каждый из которых одинаково бесполезен.
bounds
выведет: {{0, 0}, {320, 480}}
, а
applicationFrame
выдаст {{0, 20}, {320, 460}}
Как видите, bounds
дает правильное начало координат y (0 начинается справа под строкой состояния), но затем дает высоту 480, что неверно. Должно быть 460, так как статусная строка видна. Тогда у нас есть applicationFrame
, который начинается на 20 пикселей ниже строки состояния (так что есть заглушка), но затем дает правильную высоту. Но в любом случае это не очень полезно, когда его толкают на 20 пикселей.
Любая помощь?