其實我已經創建了一個簡單的應用程序,我想在屏幕方向的變化上顯示另一個活動。我已經通過了堆棧溢出中給出的文檔和示例,並通過使用這個我已經生成了我的應用程序和它的工作正常。但我唯一的疑問是,如果在我的主要活動的activity標籤內的清單文件中,如果我使用android:screenOrientation="portrait"
然後運行應用程序,那麼在屏幕方向的更改上我的下一個活動不會打開,但是如果我刪除此代碼從清單然後它工作正常。顯示屏幕方向變化的活動問題
所以我的問題是,如果我希望我的主要活動總是以縱向模式打開的話,我應該在主要活動的清單中使用此代碼..如果我這樣做然後在屏幕的變化我的下一個活動未開啓。
所以任何人都可以幫助我解決這個問題。我已經使用的代碼是:
代碼清單文件
<?xml version="1.0" encoding="utf-8"?>
<uses-sdk android:minSdkVersion="8" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".MainActivity"
android:configChanges="orientation"
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
android:name=".ChartEngineActivity"
android:configChanges="keyboardHidden|orientation" >
</activity>
</application>
代碼在主活性
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
public void onConfigurationChanged(Configuration newConfig)
{
super.onConfigurationChanged(newConfig);
Intent intentNotes = new Intent(this, ChartEngineActivity.class);
this.startActivity(intentNotes);
finish();
}
}
刪除這個'android:screenOrientation =「portrait」'bez你的活動總是在肖像模式下打開所以'onConfigurationChanged'不叫 – 2012-03-22 06:09:37
我想你不明白我的問題..我知道它會工作,如果我刪除android:screenOrientation =「肖像」,但讓我們考慮一種情況..如果用戶通過橫向模式打開我的應用程序,那麼發生在我的主要活動中的事件也將以橫向模式打開。所以我總是以肖像模式打開我的主要活動,我用這個。所以我的問題是可以通過不替換這些代碼來完成我的工作。 – AndroidDev 2012-03-22 06:16:30
Anshuman,在MainActivity的'onCreate'中設置屏幕方向代碼在清單文件中不是靜態的 – 2012-03-22 06:24:11