Я искал, как создать представление программно и нашел следующий пример кода:
self.view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
Это работает отлично, кроме мне не нравится это это hardcodes размер экрана. Существует ли способ искать размер экрана? Важный момент, который кто-то поднял, - то, что, если приложение работает во время телефонного вызова затем, экран будет немного меньшим из-за зеленого "возврата для вызова" панели.
Есть ли способ узнать размер экрана?
Ага:
CGRect screenRect = [[UIScreen mainScreen] applicationFrame];
applicationFrame
Это свойство содержит границы экрана за вычетом занятой области строкой состояния, если она видна. Использование этого свойства - это рекомендуемый способ получить исходный размер окна вашего приложения. Прямоугольник указывается в точках.
[[UIScreen mainScreen] bounds]
или
[[UIScreen mainScreen] applicationFrame]
должно быть всем, что вам нужно, чтобы получить полный размер экрана.
Я сам использовал только версию applicationFrame.
(Я также предложил [UIHardware fullScreenApplicationContentRect]
, но это было из очень старого кода - не используйте его)