2015-11-22 147 views
2

我的活動onConfigurationChanged根本不被調用。我已將我的SDK API更新爲棉花糖;活動OnConfigurationChange未被調用

在我的代碼重寫 「onConfigurationChanged」:

@Override 
    public void onConfigurationChanged(Configuration newConfig) { 
    Log.d(HomeActivity.class.getSimpleName() , "called"); // not called 
    super.onConfigurationChanged(newConfig); 
    Log.d(HomeActivity.class.getSimpleName(), "called"); // not called 

在我的Android清單我宣佈:

<activity 
      android:name=".activities.HomeActivity" 
      android:configChanges="layoutDirection|locale" 

我打電話來改變語言:

public void changeLocale(Locale locale) { 
     Resources res = mContext.getResources(); 
     DisplayMetrics dm = res.getDisplayMetrics(); 
     android.content.res.Configuration conf = res.getConfiguration(); 
     conf.locale = new Locale(locale.toString().toLowerCase()); 
     res.updateConfiguration(conf, dm); 
} 

不任何人知道改變了什麼或者我做錯了什麼/錯過了?如果用戶更改手機的語言環境(語言)設置

感謝

回答

0

纔會被調用。只需撥打Resources.updateConfiguration()不會觸發此操作。

0

請刪除android:configChanges="layoutDirection|locale"

0

嘗試,如果這已經回答了你的問題,請標明其正確的活動

android:configChanges="keyboardHidden|orientation|screenSize" 
+0

下加入這清單 – suku