我知道要支持不同的语言,我必须添加res/values-el
例如。
我不能改变所有按钮,TextViews等。
但是,如果我的应用程序使用例如AlertDialog,我可以更改标题的语言等吗?
...
AlertDialog.Builder alt_bld = new AlertDialog.Builder(this);
alt_bld.setMessage("Do you want to navigate to the saved position?")
.setCancelable(false)
.setPositiveButton("Navigate",
alert.setTitle("Navigation");
...
好的,如果有人想通过他必须使用的服务来做到这一点:
mContext.getString(R.string.Title) //where mContext is the Context
而不是
getResources().getString(R.string.Title)
答案 0 :(得分:1)
是的,您只需要从strings.xml
获取此标题字符串。不要在代码中硬编码字符串。 Documentation
例如:
alert.setTitle(getResources().getString(R.string.navigation));
在res/values/strings.xml
中定义:
<string name="navigation">Navigation</string>
以res/values-pl/strings.xml
(例如波兰语):
<string name="navigation">Nawigacja</string>