Android禁止横竖屏和解决切换屏幕时重启Activity的方法

本文详细介绍了如何在Android应用中实现横竖屏切换,包括使用AndroidManifest.xml配置固定横竖屏、通过配置activity属性避免重启以及重写onConfigurationChanged()方法实现在不重启activity的情况下实现横竖屏切换的技术细节。

一、固定横竖屏

在AndroidManifest.xml的Activity配置中加入 android:screenOrientation=”landscape”属性(landscape是横向,portrait是纵向)。比如

  <activity android:name=".ContactsManagerActivity"
                  android:label="@string/app_name"
                  android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category    android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

二、一般横竖屏切换时,activity要重启,为了避免重启,可以在activity中属性中假如:

android:configChanges=”orientation“,然后在activity中复写onConfigurationChanged()方法,例如

public void onConfigurationChanged(Configuration newConfig) {
        // TODO Auto-generated method stub
        if (newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE) {
            setContentView(R.layout.imageswitch);
            //横屏
        } else {
            setContentView(R.layout.editcontact);//竖屏
        }
        
        super.onConfigurationChanged(newConfig);
    }

这样就可以实现不重启activity,实现横竖屏切换了。


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值