Ios 检查接口方向的正确方法

Ios 检查接口方向的正确方法,ios,uiinterfaceorientation,Ios,Uiinterfaceorientation,检查设备接口方向的正确方法是什么。 我应该检查状态栏方向还是当前活动视图控制器的方向属性 另外,有人能给我解释一下设备方向(如正面朝上和正面朝下)是否有用吗?如果代码在以方向作为输入的方法之外,我们使用: [[UIApplication sharedApplication] statusBarOrientation] 我们的一些应用程序中都有它,而且它似乎没有引起任何麻烦…:D 此外,UIInterfaceOrientationPortrait和UIInterfaceOrientationPo

检查设备接口方向的正确方法是什么。 我应该检查状态栏方向还是当前活动视图控制器的方向属性


另外,有人能给我解释一下设备方向(如正面朝上和正面朝下)是否有用吗?

如果代码在以方向作为输入的方法之外,我们使用:

[[UIApplication sharedApplication] statusBarOrientation]
我们的一些应用程序中都有它,而且它似乎没有引起任何麻烦…:D

此外,
UIInterfaceOrientationPortrait
UIInterfaceOrientationPortrait UpsideDown
之间没有太大区别,除非home按钮与屏幕方向相关(倒置很好…倒置…)

一些开发人员选择不支持
UIInterfaceOrientationGraphicalUpsideDown
模式,仅仅是因为用“主页”按钮按住设备似乎很尴尬,但如果您愿意,您可以选择实现并支持它(我们所有的应用都支持)

以下是有关此项可能值的更多信息以及每个值的说明:

编辑:

但是,请注意,iOS 6改变了UIViewController的工作方式,因为
shouldAutorotateToInterfaceOrientation
已被弃用。见此帖:

以下是UIViewController上的Apple文档,提供了更多详细信息:


如果代码位于以方向作为输入的方法之外,我们将使用:

[[UIApplication sharedApplication] statusBarOrientation]
我们的一些应用程序中都有它,而且它似乎没有引起任何麻烦…:D

此外,
UIInterfaceOrientationPortrait
UIInterfaceOrientationPortrait UpsideDown
之间没有太大区别,除非home按钮与屏幕方向相关(倒置很好…倒置…)

一些开发人员选择不支持
UIInterfaceOrientationGraphicalUpsideDown
模式,仅仅是因为用“主页”按钮按住设备似乎很尴尬,但如果您愿意,您可以选择实现并支持它(我们所有的应用都支持)

以下是有关此项可能值的更多信息以及每个值的说明:

编辑:

但是,请注意,iOS 6改变了UIViewController的工作方式,因为
shouldAutorotateToInterfaceOrientation
已被弃用。见此帖:

以下是UIViewController上的Apple文档,提供了更多详细信息:


如果您想知道用户以何种方式查看界面,请使用界面方向。我想两种方法都可以

如果要了解物理设备的定位方式,请使用设备方向

请注意,接口方向与设备方向不同(因此不存在“设备的接口方向”)

设备方向可以是平上/平下(界面只能是纵向/倒置/横向右/左)。如果设备旋转,但接口设置为常量,则设备方向也可能不同。加上景观方向颠倒,例如设备LandsaperRight==界面landscapeLeft

我不确定什么时候脸朝上/朝下可能有用

如果需要实际方法,可以使用以下方法从视图控制器检查界面方向:

UIInterfaceOrientation orientation = self.interfaceOrientation;
或从应用程序中的任何类使用此选项(状态栏检查):

按如下方式获取设备方向:

UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];

如果您希望了解用户查看界面的方式,请使用界面方向。我想两种方法都可以

如果要了解物理设备的定位方式,请使用设备方向

请注意,接口方向与设备方向不同(因此不存在“设备的接口方向”)

设备方向可以是平上/平下(界面只能是纵向/倒置/横向右/左)。如果设备旋转,但接口设置为常量,则设备方向也可能不同。加上景观方向颠倒,例如设备LandsaperRight==界面landscapeLeft

我不确定什么时候脸朝上/朝下可能有用

如果需要实际方法,可以使用以下方法从视图控制器检查界面方向:

UIInterfaceOrientation orientation = self.interfaceOrientation;
或从应用程序中的任何类使用此选项(状态栏检查):

按如下方式获取设备方向:

UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];

你可以使用下面的代码

愿这对你有帮助

if (UIDeviceOrientationIsPortrait([UIDevice currentDevice].orientation))
    {     
       //  Orientation is   Portrait   
    }       
    if (UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)) 
    {       
       // Orientation is Landscape        
    }

你可以使用下面的代码

愿这对你有帮助

if (UIDeviceOrientationIsPortrait([UIDevice currentDevice].orientation))
    {     
       //  Orientation is   Portrait   
    }       
    if (UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation)) 
    {       
       // Orientation is Landscape        
    }