gpt4 book ai didi

IOS,如何在启动或 viewDidAppear 时获取设备方向

转载 作者:行者123 更新时间:2023-12-01 17:22:53 27 4
gpt4 key购买 nike

我有一个应用程序,根据方向显示不同的图像......我一直在使用:

UIDeviceOrientationIsLandscape([[UIDevice currentDevice] orientation]);

看看它是否是landsCape......但如果我在我的rootViewController中调用它: viewDidLoad , viewWillAppear , 或 viewDidAppear它总是错误的....然后我试图通过比较具有 autosizeMask 的框架的宽度和高度来确定它的 landsCape 与否,因此它始终是全屏的...它是一个 ScrollView ,我执行以下操作:
BOOL landscape = self.frame.size.width>self.frame.size.height;

但这也不起作用(总是错误的),因为此时 View 仍然具有纵向 View 的框架。

最佳答案

不要使用设备方向,而是检查界面方向。这些宏将为您提供帮助。

#define IS_PORTRAIT     UIInterfaceOrientationIsPortrait([[UIApplication sharedApplication] statusBarOrientation])
#define IS_LANDSCAPE UIInterfaceOrientationIsLandscape([[UIApplication sharedApplication] statusBarOrientation])

关于IOS,如何在启动或 viewDidAppear 时获取设备方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22100985/

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