zoukankan      html  css  js  c++  java
  • ios 设备方向判断

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

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

    判断设备现在的方向:

    C代码  收藏代码
    1. - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation  
    2. {  
    3.     //宣告一個UIDevice指標,並取得目前Device的狀況  
    4.     UIDevice *device = [UIDevice currentDevice] ;   
    5.       
    6.     //取得當前Device的方向,來當作判斷敘述。(Device的方向型態為Integer)  
    7.     switch (device.orientation) {  
    8.         case UIDeviceOrientationFaceUp:  
    9.         NSLog(@"螢幕朝上平躺");  
    10.             break;  
    11.               
    12.         case UIDeviceOrientationFaceDown:  
    13.         NSLog(@"螢幕朝下平躺");  
    14.             break;  
    15.               
    16.         //系統無法判斷目前Device的方向,有可能是斜置   
    17.         case UIDeviceOrientationUnknown:  
    18.         NSLog(@"未知方向");  
    19.             break;  
    20.               
    21.         case UIDeviceOrientationLandscapeLeft:  
    22.         NSLog(@"螢幕向左橫置");  
    23.             break;  
    24.               
    25.         case UIDeviceOrientationLandscapeRight:  
    26.         NSLog(@"螢幕向右橫置");  
    27.             break;  
    28.               
    29.         case UIDeviceOrientationPortrait:  
    30.         NSLog(@"螢幕直立");  
    31.             break;  
    32.               
    33.         case UIDeviceOrientationPortraitUpsideDown:  
    34.         NSLog(@"螢幕直立,上下顛倒");  
    35.             break;  
    36.               
    37.         default:  
    38.         NSLog(@"無法辨識");  
    39.             break;  
    40.     }  
    41.   
    42.     // Return YES for supported orientations  
    43.     return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft); // 只支持向左横向, YES 表示支持所有方向  
    44. }  

    或者

    C代码  收藏代码
    1. - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation  
    2. {  
    3.     UIDeviceOrientation deviceOrientation = [UIDevice currentDevice].orientation;  
    4.     if (UIDeviceOrientationIsLandscape(deviceOrientation)) NSLog(@"横向");      
    5.     else if(UIDeviceOrientationIsPortrait(deviceOrientation)) NSLog(@"纵向");  
    6.       
    7.     // // Return YES for supported orientations  
    8.     return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft); // 只支持向左横向, YES 表示支持所有方向  
    9. }  

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

    C代码  收藏代码
    1. typedef enum {  
    2.     UIDeviceOrientationUnknown,  
    3.     UIDeviceOrientationPortrait,            // Device oriented vertically, home button on the bottom  
    4.     UIDeviceOrientationPortraitUpsideDown,  // Device oriented vertically, home button on the top  
    5.     UIDeviceOrientationLandscapeLeft,       // Device oriented horizontally, home button on the right  
    6.     UIDeviceOrientationLandscapeRight,      // Device oriented horizontally, home button on the left  
    7.     UIDeviceOrientationFaceUp,              // Device oriented flat, face up  
    8.     UIDeviceOrientationFaceDown             // Device oriented flat, face down  
    9. } UIDeviceOrientation;  
    C代码  收藏代码
    1. typedef enum {  
    2.     UIInterfaceOrientationPortrait           = UIDeviceOrientationPortrait,  
    3.     UIInterfaceOrientationPortraitUpsideDown = UIDeviceOrientationPortraitUpsideDown,  
    4.     UIInterfaceOrientationLandscapeLeft      = UIDeviceOrientationLandscapeRight,  
    5.     UIInterfaceOrientationLandscapeRight     = UIDeviceOrientationLandscapeLeft  
    6. } UIInterfaceOrientation;  

      

    C代码  收藏代码
    1. #define UIDeviceOrientationIsPortrait(orientation)  ((orientation) == UIDeviceOrientationPortrait || (orientation) == UIDeviceOrientationPortraitUpsideDown)  
    2. #define UIDeviceOrientationIsLandscape(orientation) ((orientation) == UIDeviceOrientationLandscapeLeft || (orientation) == UIDeviceOrientationLandscapeRight)  

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

  • 相关阅读:
    AcWing 157. 树形地铁系统 (hash判断树同构)打卡
    AcWing 156. 矩阵 (哈希二维转一维查询)打卡
    AcWing 144. 最长异或值路径 01字典树打卡
    AcWing 143. 最大异或对 01字典树打卡
    AcWing 142. 前缀统计 字典树打卡
    AcWing 139. 回文子串的最大长度 hash打卡
    AcWing 138. 兔子与兔子 hash打卡
    常用C库函数功能及用法
    编程实现C库函数
    C语言面试题5
  • 原文地址:https://www.cnblogs.com/iphone520/p/2575833.html
Copyright © 2011-2022 走看看