禁止横屏和竖屏切换

在某些场合可能需要禁止横屏和竖屏切换,实现这个要求很简单,只要在AndroidManifest.xml里面加入这一行android :screenOrientation="landscape "(landscape 是横向,portrait 是纵向)。不过android中每次屏幕的切换动会重启Activity,所以应该在Activity销毁前保存当前活动的状态,在Activity再次 Create的时候载入配置。在activity加上 android:configChanges="keyboardHidden|orientation"属性,就不会重启activity.而是去调用 onConfigurationChanged(Configuration newConfig). 这样就可以在这个方法里调整显示方式.

  1. @Override    
  2.     public void onConfigurationChanged(Configuration newConfig) {    
  3.         try {    
  4.             super.onConfigurationChanged(newConfig);    
  5.             if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {    
  6.                 // land    
  7.             } else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {    
  8.                 // port    
  9.             }    
  10.         } catch (Exception ex) {    
  11.         }    
  12.     
  13.     }   

你可能感兴趣的:(切换)