0

我正在用屏幕旋转在 Android 中编写非常简单的应用程序。我想“修复”这段代码,因为屏幕不旋转。

我在清单中添加代码:

android:configChanges="orientation|keyboardHidden">

其余代码:

package com.example;

import android.app.Activity;
import android.content.res.Configuration;
import android.os.Bundle;

public class ScreenOrientationActivity extends Activity {

      public void onSavedInstanceState(Bundle savedInstanceState){
        super.onSaveInstanceState(savedInstanceState);
      }

      public void onConfigurationChanged(Configuration config){
          super.onConfigurationChanged(config);
          if(config.orientation==Configuration.ORIENTATION_LANDSCAPE){
    setContentView(R.layout.landscape);
          }

          if(config.orientation==Configuration.ORIENTATION_PORTRAIT){
  setContentView(R.layout.main);
          }
      }

      @Override
      public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.main);


      }
        public void onRestoreInstanceState(Bundle savedInstanceState){
            super.onRestoreInstanceState(savedInstanceState);

        }   
}
**EDIT:**

我的完整 manifest.xml- 他没有行 android:screenOrientation=portrait:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.example"
      android:versionCode="1"
      android:versionName="1.0"
       android:configChanges="orientation|keyboardHidden">
    <uses-sdk android:minSdkVersion="10" />

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".ScreenOrientationActivity"
                  android:label="@string/app_name"
                  android:configChanges="orientation">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
</manifest>
4

2 回答 2

0

您是否在清单的活动标签中添加了方向=纵向?

于 2011-08-27T14:18:50.123 回答
0

您不需要在 onConfigChanges 中手动执行此操作...只需在与布局相同级别添加一个名为 layout-land 的库,并将横向模式的布局文件放在那里。Android 会自动为您完成。

在这里阅读:http: //developer.android.com/guide/topics/resources/providing-resources.html

于 2011-08-27T14:39:05.700 回答