Android禁止横屏和竖屏切换

本文介绍如何在Android应用中禁用屏幕方向的自动切换,并演示如何在屏幕方向改变时保存和恢复Activity状态,避免Activity被重启。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android禁止横屏和竖屏切换 

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

}

转载于:https://my.oschina.net/u/856651/blog/99017

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值