android 实现应用内根据国际切换相应的语言?

android 实现应用内根据国际切换相应的语言?类似booking android app的效果,请教各位大神如何实现?有没有相应的源码可以推荐?

阅读 3.8k
2 个回答

举个栗子

在 strings.xml 中添加

<string name="app_name">App Name Default</string>
<string name="app_name_cn">应用名称 CN</string>
<string name="app_name_en">App Name EN</string>

关键方法

@StringRes
public static int getStringResId(Context context, String name, String language) {
    return context.getResources().getIdentifier(name + "_" + language, "string", context.getPackageName());
}

使用

((TextView) findViewById(R.id.text1)).setText(getStringResId(this, "app_name", "cn"));
((TextView) findViewById(R.id.text2)).setText(getStringResId(this, "app_name", "en"));

具体实现需要考虑异常等

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题