语言更改时未调用onConfigurationChanged

时间:2015-08-10 17:00:09

标签: android

虽然我添加到清单文件中,但对于每个活动, 机器人:configChanges = “区域|的layoutDirection” 当我更改应用程序内的语言时,该方法未被调用。

更改语言的代码

        Locale locale = new Locale(languageToLoad);
        Locale.setDefault(locale);
        //          Configuration: a class describing all device configration information that can impact resources the apllication retrieves.
        Configuration config = new Configuration();
        config.locale = locale;
        getBaseContext().getResources().updateConfiguration(config,
                getBaseContext().getResources().getDisplayMetrics());

我知道它没有被调用,因为我正在打印到logcat并显示一条消息而没有正在执行

@Override
public void onConfigurationChanged (Configuration newConfig){

    printMyLogCat("in Onconfigarion changed");
    doMyToast(this, "in Onconfigarion changed");
    super.onConfigurationChanged(newConfig);
}

public void printMyLogCat(String string) {
    Log.i(getClass().getName(), string);
}

public void doMyToast(Context context, String string){
    Toast.makeText(context, string, Toast.LENGTH_SHORT).show();
}

0 个答案:

没有答案