gpt4 book ai didi

ios - 为什么applicationFrame和statusBarFrame是从两个不同的对象获取的?

转载 作者:行者123 更新时间:2023-11-29 04:24:30 24 4
gpt4 key购买 nike

我认为 statusBarFrameapplicationFrame 完全互补,形成整个屏幕的边界。框架的值是相对于“原始”纵向屏幕坐标(我认为是屏幕的边界)。例如,当 iPad 颠倒旋转时,输出为

NSLog(@"the status bar frame is %@", 
NSStringFromCGRect([[UIApplication sharedApplication] statusBarFrame]));

NSLog(@"the applicationFrame is %@",
NSStringFromCGRect([[UIScreen mainScreen] applicationFrame]));

the status bar frame is {{0, 1004}, {768, 20}}
the applicationFrame is {{0, 0}, {768, 1004}}

但问题是,这两个互补的值为什么来自两个不同的对象:应用程序实例和 UIScreen 实例,而不是来自同一个对象? (比如说,两者都来自 UIScreen 对象?)

最佳答案

简单地说,这是因为每个应用程序只有一个状态栏,但单个应用程序可能有多个屏幕(例如通过 AirPlay)。

关于ios - 为什么applicationFrame和statusBarFrame是从两个不同的对象获取的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12542998/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com