为什么在Apple的一些示例代码(例如PhotoScroller)中看到应该在loadView中执行以下操作:

CGRect frame = [[UIScreen mainScreen] bounds];

代替
CGRect frame = [[UIScreen mainScreen] applicationFrame];

获得主屏幕的框架是否有所不同?

最佳答案

ApplicationFrame是屏幕大小减去状态栏的大小(如果可见),bounds是屏幕大小,与状态栏无关。

因此,假设您的应用程序的状态栏设置为可见,那么applicationFrame将返回CGRectMake(0,0,320,460),而在相同条件下,bounds将返回CGRectMake(0,0,320,480)。这些数字是假设使用iPhone/iPod Touch屏幕尺寸。

UIScreen Class Reference

关于ios - UIScreen边界与applicationFrame,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3120139/

10-10 22:24