I'm a bit annoyed. I have an app with the statusbar visible in the main window. Since I would like to setup my views and their frame sizes dynamically (perhaps the status bar takes up 40 pixels during a phone call, for example).
I can do one of the two:
[[UIScreen mainScreen] bounds];
[[UIScreen mainScreen] applicationFrame];
The really annoying this is these two output two different sets of values, each equally as useless.
bounds
will output: {{0, 0}, {320, 480}}
while
applicationFrame
will output {{0, 20}, {320, 460}}
As you can see, bounds
gives the correct y origin (0 starts from right below the statusbar) but then gives a height of 480, which is incorrect. It should be 460, since the statusbar is visible. Then we have applicationFrame
which starts 20 pixels below the statusbar (so there's a cap), but then gives the correct height. But that's not very useful when it's then pushed down 20 pixels anyway.
Any help?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…