Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 重启设备后如何保持语言?_Android - Fatal编程技术网

Android 重启设备后如何保持语言?

Android 重启设备后如何保持语言?,android,Android,我的应用程序中的语言更改有问题。这就是我在应用程序中更改按钮clic语言的方式 Locale locale = new Locale("en"); Locale.setDefault(locale); Configuration config = new Configuration(); config.locale = locale.ENGLISH; getBaseContext().getResources().updateConfigurat

我的应用程序中的语言更改有问题。这就是我在应用程序中更改按钮clic语言的方式

        Locale locale = new Locale("en");
    Locale.setDefault(locale);
    Configuration config = new Configuration();
    config.locale = locale.ENGLISH; 
    getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());
    Intent i = new Intent(v.getContext(), HomeActivity.class);
    startActivity(i);
工作正常,但当我更改语言时,我的键盘不会以新语言更改,并保留系统语言,当我重新启动设备时,我的应用程序不会保持语言更改

如何在重新启动后保留语言,并在语言更改后使键盘更改语言

请原谅我的英语

thks

使用共享首选项

class my_activity extends Activity
 {
     SharedPreferences prefs;
     String lang;

        onCreate(Bundle savedInstance)
        {
            //to retrieve the saved language 
          prefs = PreferenceManager.getDefaultSharedPreferences(this);
          lang =prefs.getString("lang", "en");
           //lang = "en"or whatever the saved language before restarting the device
           //if there is no saved string with this key "lang" lang variable will be  
            equal "en"
        }
当应用程序中的语言更改时,单击“打开”按钮

{
    prefs.edit().putString("lang", lang).commit();
}

您需要在数据库或共享首选项中保存一个id或索引,以便在重新启动后返回语言。我可以怎么做?thks Menna Allah Sami,我尝试告诉您发生了什么事情thks工作,但如果应用程序的语言也发生了变化,如何更改键盘语言?