Android屏幕横屏竖屏切换的方法
16lz
2021-01-23
packagelxd.copenhagen.clickListern;
importandroid.app.Activity;
importandroid.content.pm.ActivityInfo;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.Toast;
publicclassClickEventActivityextendsActivity
{
privateButtonbutton;
/**Calledwhentheactivityisfirstcreated.*/
@Override
publicvoidonCreate(BundlesavedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button=(Button)super.findViewById(R.id.btnTest);
button.setOnClickListener(newOnClickListener()
{
@Override
publicvoidonClick(Viewv)
{
into=getRequestedOrientation();//获取手机的朝向
switch(o)
{
caseActivityInfo.SCREEN_ORIENTATION_LANDSCAPE:
button.setText("当前屏幕朝向为:横屏");
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
break;
caseActivityInfo.SCREEN_ORIENTATION_PORTRAIT:
button.setText("当前屏幕朝向为:竖屏");
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
break;
default:
button.setText("sb");
}
//不能省略,否则会报android.app.SuperNotCalledException:Activity
//OrientationActivitydidnot
//callthroughtosuper.onConfigurationChanged()异常
//super.onConfigurationChanged(newConfig);
}
});
}
} 源代码如上 需要配置 ManiFest菜单 这样配置的: <?xmlversion= "1.0"encoding= "utf-8"?>
<manifestxmlns:android= "http://schemas.android.com/apk/res/android"
package= "lxd.copenhagen.clickListern"
android:versionCode="1"
android:versionName="1.0">
<uses-sdkandroid:minSdkVersion="8"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name">
<activity
android:screenOrientation="landscape"
android:name=".ClickEventActivity"
android:label="@string/app_name">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
<uses-permissionandroid:name="android.permission.CHANGE_CONFIGURATION"/>
</manifest>
importandroid.app.Activity;
importandroid.content.pm.ActivityInfo;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.Toast;
publicclassClickEventActivityextendsActivity
{
privateButtonbutton;
/**Calledwhentheactivityisfirstcreated.*/
@Override
publicvoidonCreate(BundlesavedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button=(Button)super.findViewById(R.id.btnTest);
button.setOnClickListener(newOnClickListener()
{
@Override
publicvoidonClick(Viewv)
{
into=getRequestedOrientation();//获取手机的朝向
switch(o)
{
caseActivityInfo.SCREEN_ORIENTATION_LANDSCAPE:
button.setText("当前屏幕朝向为:横屏");
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
break;
caseActivityInfo.SCREEN_ORIENTATION_PORTRAIT:
button.setText("当前屏幕朝向为:竖屏");
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
break;
default:
button.setText("sb");
}
//不能省略,否则会报android.app.SuperNotCalledException:Activity
//OrientationActivitydidnot
//callthroughtosuper.onConfigurationChanged()异常
//super.onConfigurationChanged(newConfig);
}
});
}
} 源代码如上 需要配置 ManiFest菜单 这样配置的: <?xmlversion= "1.0"encoding= "utf-8"?>
<manifestxmlns:android= "http://schemas.android.com/apk/res/android"
package= "lxd.copenhagen.clickListern"
android:versionCode="1"
android:versionName="1.0">
<uses-sdkandroid:minSdkVersion="8"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name">
<activity
android:screenOrientation="landscape"
android:name=".ClickEventActivity"
android:label="@string/app_name">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
<uses-permissionandroid:name="android.permission.CHANGE_CONFIGURATION"/>
</manifest>
更多相关文章
- Android 实现由下至上弹出并位于屏幕底部的提示框
- android 屏幕保持唤醒 不锁屏 android.permission.WAKE_LOCK
- Android 屏幕真实分辨率获取
- Android 保持屏幕常亮
- android camera根据屏幕图像大小设置显示
- android获取设备屏幕分辨率的方法
- Android 下保持屏幕常亮的实现方法
- Android屏幕录制