在Activity和XML中设置屏幕的横竖屏幕

发布时间:2017-09-03 13:13:21
在Activity和XML中设置屏幕的横竖屏幕

功能概述:

Android中设置横屏和竖屏的方法


XML Layout清单:


[html]
activity
android:name="com.example.touchandscreen.MainActivity"
android:label="@string/app_name"
android:screenOrientation="landscape"
android:configChanges="keyboardHidden|orientation"
>
<!--
android:screenOrientation="landscape"
android:configChanges="keyboardHidden|orientation"
这两句为设置横屏和竖屏,可视化专题,在屏幕切换的时候默认为重新走OnCreate方法
当设置了configChange之后就不会再重新走onCreate方法
-->
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

<activity
android:name="com.example.touchandscreen.MainActivity"
android:label="@string/app_name"
android:screenOrientation="landscape"
android:configChanges="keyboardHidden|orientation"
>
<!--
android:screenOrientation="landscape"
android:configChanges="keyboardHidden|orientation"
这两句为设置横屏和竖屏,在屏幕切换的时候默认为重新走OnCreate方法
当设置了configChange之后就不会再重新走onCreate方法
-->
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

补充说明:


1、 landscape 是横向,站群系统,portrait 是纵向 通过android:screenOrientation属性设置

2、 android:configChanges="keyboardHidden|orientation"

这两句为设置横屏和竖屏,在屏幕切换的时候默认为重新走OnCreate方法,当设置了configChange之后就不会再重新走onCreate方法,也不会重新初始化


Activity中的实现方式:


[java]
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
try {
if(this.getResources().getConfiguration().orientation == newConfig.ORIENTATION_LANDSCAPE){
Log.v("orientation", "ORIENTATION_LANDSCAPE");
}
} catch (Exception e) {
e.printStackTrace();
}
}

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:荆门网站建设 http://jingmen.45qun.com