zoukankan      html  css  js  c++  java
  • UIDeviceOrientationDidChangeNotification和UIApplicationDidChangeStatusBarFrameNotification

    这几天做App的时候,需要添加旋转屏通知以便调整UI布局

    刚开始我使用的是UIDeviceOrientationDidChangeNotification,

    一直有一些问题就是,如果使用这个通知,当iPhone/iPad旋转的时候,你会得到的旋转方向会是所有的

    1. UIDeviceOrientationUnknown和UIDeviceOrientationFaceUp等  

     

    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;  


    但是我不需要对

    1. UIDeviceOrientationUnknown和UIDeviceOrientationFaceUp  

    进行处理,所以有时候就会出错,

    后来更改为通知UIApplicationDidChangeStatusBarFrameNotification

    在只有status更改位置的时候你才会收到通知,即你此时得到的方向只会是

     

      1. UIDeviceOrientationPortrait  
      2. UIDeviceOrientationPortraitUpsideDown  
      3. UIDeviceOrientationLandscapeLeft  
      4. UIDeviceOrientationLandscapeRight 
  • 相关阅读:
    POJ 1470 -- Closest Common Ancestors
    js跳转链接的几种方式
    vue移动端项目经验(二)
    css项目知识小汇总
    浏览器滚动条样式自定义(兼容火狐)
    媒体查询
    vue移动端项目经验
    文字溢出时省略号表示
    vue2.0-4.0的移动端及PC端屏幕大小适配
    vue移动端UI组件库
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/6478691.html
Copyright © 2011-2022 走看看