我有默认的drawables(英文)以及挪威语(nb)和德语(de)。我的问题是:
是否有可能本地化是瑞典语(sv)或丹麦语(da),而不是使用默认drawables(在我的情况下是英语)的正常行为,使用挪威drawables而不从drawable-nb复制文件到darawable-sv和drawable-da?
提前感谢您有兴趣回答我的问题。
答案 0 :(得分:1)
如果您希望平台根据区域设置拾取相关的drawable,则必须将它们放在相应的区域设置文件夹中 - 这是 drawable-da 和 drawable-sv 强>在你的情况下。
您也可以使用Locale类并以编程方式在运行时选择drawable。
答案 1 :(得分:1)
从this answer中提取,您可以扩展Application类并将语言环境设置为您想要的任何内容:
public class MyApplication extends Application
{
private Locale locale = null;
@Override
public void onCreate()
{
super.onCreate();
Configuration config = getBaseContext().getResources().getConfiguration();
String lang = config.locale.getLanguage();
if (lang.equals("sv") || lang.equals("da"))
{
locale = new Locale("nb-NO");
Locale.setDefault(locale);
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());
}
}
}