我有一个textview(语言)和两个单选按钮(中文)和(英文)以及一个保存按钮,采用相同的布局。我的问题是在选择一种语言之后,当我点击保存按钮时,我的textview(语言)会相应地改变,但我的按钮(保存)不会刷新。
我的代码是:
if (lang_selected.equalsIgnoreCase("English")) {
Locale locale = new Locale("es");
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
context.getResources().updateConfiguration(config,context.getResources().getDisplayMetrics());
//initView(view);
}else if(lang_selected.equalsIgnoreCase("Chinese")){
Locale locale = new Locale("zh");
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
context.getResources().updateConfiguration(config,context.getResources().getDisplayMetrics());
//initView(view);
}
这里我正在尝试刷新我的textview文本和Imagebutton:
txtLanguage_onLanguageScreen.setText(getString(R.string.language));
saveBtnlanguage.setImageResource(R.drawable.general_info_save_button);
答案 0 :(得分:1)
如果问题是图像没有变成中国国旗,那么
你必须提供本地化的可绘制文件夹
即: drawable-zh 用于中文图形资源。
如果您支持多种分辨率,则还必须添加dpi:
即: drawable-zh-xhdpi 用于xhdpi(~320 dpi)资源
这里你把你的中国国旗,而在drawable(drawable-xhdpi)你把英国国旗。
由于英语是默认语言,因此不需要指定“en”。
和你的 values.zh 文件夹,包含文件strings.xml(我假设你正在使用,因为其余的工作),应该在字符串中包含中文版的“保存”称为“语言”(与英文版相同)
答案 1 :(得分:1)
在您的values文件夹中提供中文版“保存”。创建文件夹values-zh并为中文提供string.xml。