在Android程序設置中,當轉化屏幕方向時,系統告知不能調用onCreate()方法。
我在manifest上添加android:configChanges="orientation"後,轉化屏幕方向還是不能調用onCreate()。
AndroidManifest.xml
<activity android:name="SearchMenuActivity" android:theme="@android:style/Theme.NoTitleBar" android:configChanges="orientation"></activity>
SearchMenuActivity.java
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.search_menu_activity);
Log.d(TAG, "onCreate() Called");
}
@Override
public void onConfigurationChanged(Configuration newConfig) {
Log.d(TAG, "onConfigurationChanged() Called");
super.onConfigurationChanged(newConfig);
}
LogCat Output
10-19 12:33:20.327: DEBUG/APP(2905): onCreate() Called
//轉化屏幕方向
10-19 12:33:23.842: DEBUG/APP(2905): onCreate() Called
請求大家幫忙指點出錯的地方。謝謝!
自從Android 3.2(API 13),screen size也開始跟著設備的橫豎切換而改變。
所以,在AndroidManifest.xml裡設置的MiniSdkVersion和 TargetSdkVersion屬性大於等於13的情況下,
如果你想阻止程序在運行時重新加載Activity,除了設置"orientation",你還必須設置"ScreenSize"。
解決方法:
AndroidManifest.xml中設置android:configChanges="orientation|screenSize“