zoukankan      html  css  js  c++  java
  • UIDeviceOrientation UIInterfaceOrientation 区别

    UIDeviceOrientation      是机器硬件的当前旋转方向   这个你只能取值 不能设置

    UIInterfaceOrientation   是你程序界面的当前旋转方向   这个可以设置

    //判断设备现在的方向:

    //C代码  收藏代码

    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

    {

        //宣告一個UIDevice指標,並取得目前Device的狀況

        UIDevice *device = [UIDevice currentDevice] ;

        

        //取得當前Device的方向,來當作判斷敘述。(Device的方向型態為Integer)

        switch (device.orientation) {

            case UIDeviceOrientationFaceUp:

                NSLog(@"螢幕朝上平躺");

                break;

                

            case UIDeviceOrientationFaceDown:

                NSLog(@"螢幕朝下平躺");

                break;

                

                //系統無法判斷目前Device的方向,有可能是斜置

            case UIDeviceOrientationUnknown:

                NSLog(@"未知方向");

                break;

                

            case UIDeviceOrientationLandscapeLeft:

                NSLog(@"螢幕向左橫置");

                break;

                

            case UIDeviceOrientationLandscapeRight:

                NSLog(@"螢幕向右橫置");

                break;

                

            case UIDeviceOrientationPortrait:

                NSLog(@"螢幕直立");

                break;

                

            case UIDeviceOrientationPortraitUpsideDown:

                NSLog(@"螢幕直立,上下顛倒");

                break;

                

            default:

                NSLog(@"無法辨識");

                break;

        }

        

        // Return YES for supported orientations

        return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft); // 只支持向左横向, YES 表示支持所有方向

    }

    //或者

    //C代码  收藏代码

    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

    {

        UIDeviceOrientation deviceOrientation = [UIDevice currentDevice].orientation;

        if (UIDeviceOrientationIsLandscape(deviceOrientation)) NSLog(@"横向");

        else if(UIDeviceOrientationIsPortrait(deviceOrientation)) NSLog(@"纵向");

        

        // // Return YES for supported orientations

        return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft); // 只支持向左横向, YES 表示支持所有方向

    }

    //Portrait 表示 纵向,Landscape 表示 横向。

    //C代码  收藏代码

    typedef enum {

        UIDeviceOrientationUnknown,

        UIDeviceOrientationPortrait,            // Device oriented vertically, home button on the bottom

        UIDeviceOrientationPortraitUpsideDown,  // Device oriented vertically, home button on the top

        UIDeviceOrientationLandscapeLeft,       // Device oriented horizontally, home button on the right

        UIDeviceOrientationLandscapeRight,      // Device oriented horizontally, home button on the left

        UIDeviceOrientationFaceUp,              // Device oriented flat, face up

        UIDeviceOrientationFaceDown             // Device oriented flat, face down

    } UIDeviceOrientation;

    //C代码  收藏代码

    typedef enum {

        UIInterfaceOrientationPortrait           = UIDeviceOrientationPortrait,

        UIInterfaceOrientationPortraitUpsideDown = UIDeviceOrientationPortraitUpsideDown,

        UIInterfaceOrientationLandscapeLeft      = UIDeviceOrientationLandscapeRight,

        UIInterfaceOrientationLandscapeRight     = UIDeviceOrientationLandscapeLeft

    } UIInterfaceOrientation;

    //C代码  收藏代码

    #define UIDeviceOrientationIsPortrait(orientation)  ((orientation) == UIDeviceOrientationPortrait || (orientation) == UIDeviceOrientationPortraitUpsideDown)

    #define UIDeviceOrientationIsLandscape(orientation) ((orientation) == UIDeviceOrientationLandscapeLeft || (orientation) == UIDeviceOrientationLandscapeRight)

    //上面是重要的源代码,已经解释的非常清楚。UIDeviceOrientationIsPortrait(orientation) 跟  ((orientation) == UIDeviceOrientationPortrait || (orientation) == UIDeviceOrientationPortraitUpsideDown) 完全是一个意思。

  • 相关阅读:
    jquery easy ui 学习 (8)basic treegrid
    jquery easy ui 学习 (7) TreeGrid Actions
    jquery easy ui 学习 (6) basic validatebox
    jquery easy ui 学习 (5) windowlayout
    jquery easy ui 学习 (4) window 打开之后 限制操纵后面元素属性
    提示“应用程序无法启动,因为应用程序的并行配置不正确”不能加载 System.Data.SQLite.dll
    visual studio 添加虚线的快捷键
    VS2010打开项目时,出现“已经在解决方案中打开了具有该名称的项目”问题的解决方案
    visual studio 编译时 出现 Files 的值 乱码
    微信 连接被意外关闭
  • 原文地址:https://www.cnblogs.com/yhj1787354782/p/4980170.html
Copyright © 2011-2022 走看看