1.Xml锁定横屏或竖屏
在没有设置屏幕方向的情况下会默认设置为:android:screenOrientation="unspecified"、即未指明屏幕方向、属性取值landscape为固定横屏、portrait为固定纵屏幕、会根据屏幕的方向做改变、在AndroidManifest.xml中配置、如果使某个Activity做横竖屏的变化、在Activity的标签中加入android:screenOrientation="portrait"、效果如下
<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
<application ... >
<activity
android:name="com.jsl.gt.qhstudent.MainActivity"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Black.NoTitleBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
2、Java代码实现方式
手动变换资源文件等操作、即是因为屏幕变换后会再次重启而调用oncreate()、所以判断当前的屏幕为横或竖方向后更改资源文件即可实现、代码如下
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setRequestedOrientation(ActivityInfo .SCREEN_ORIENTATION_LANDSCAPE);// 横屏 //setRequestedOrientation(ActivityInfo .SCREEN_ORIENTATION_PORTRAIT);//竖屏 setContentView(R.layout.main); }