我想在UI中使用2种语言,并在我的资源文件中为它们分别使用字符串值res\values\strings.xml:
<string name="tab_Books_en">Books</string>
<string name="tab_Quotes_en">Quotes</string>
<string name="tab_Questions_en">Questions</string>
<string name="tab_Notes_en">Notes</string>
<string name="tab_Bookmarks_en">Bookmarks</string>
<string name="tab_Books_ru">?????</string>
<string name="tab_Quotes_ru">??????</string>
<string name="tab_Questions_ru">???????</string>
<string name="tab_Notes_ru">???????</string>
<string name="tab_Bookmarks_ru">????????</string>
Run Code Online (Sandbox Code Playgroud)
现在我需要在我的应用中动态检索这些值:
spec.setContent(R.id.tabPage1);
String pack = getPackageName();
String id = "tab_Books_" + Central.lang;
int i = Central.Res.getIdentifier(id, "string", pack);
String str = Central.Res.getString(i);
Run Code Online (Sandbox Code Playgroud)
我的问题是i = 0.
为什么它在我的情况下不起作用?
在Android中编程,大多数文本值都在预期中CharSequence.
这是为什么?有什么好处,使用CharSequence过的主要影响是String什么?
在使用它们和从一个转换到另一个时,主要的区别是什么,预期会出现什么问题?