程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> java-Android中的onConfigurationChanged方法不能被調用

java-Android中的onConfigurationChanged方法不能被調用

編輯:編程綜合問答
Android中的onConfigurationChanged方法不能被調用

在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“

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved