values
文字列用のフォルダーに2 つの xml ファイルがあります。
- new_strings.xml
- 文字列.xml
strings.xml
次のように文字列にアクセスできます。
String str = getString(R.string.app_name);
から直接アクセスするにはどうすればよいnew_strings.xml
ですか?
同じ方法で、strings.xml ファイルの値にアクセスしています。
例 :
ストリングス.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_1">First app name</string>
</resources>
new_strings.xml :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_2">Second app_name</string>
</resources>
あなたのJavaコードでは、次のことができます:
R.string.app_name_1
R.string.app_name_2
2 つの異なる xml ファイルにある両方の値にアクセスできます。
ドキュメントが言ったように:ファイルの場所:
res/values/filename.xml
ファイル名は任意です。要素の<string>
名前がリソース ID として使用されます。
コンパイルされたリソース データ型: String へのリソース ポインタ。
あなたに本当に短い答えを与えるために:
はい、ファイル名に関係なく、両方のファイルのすべての文字列にアクセスできます。通常、すべての文字列を 1 つのファイルに保存することをお勧めしますが、個人的には、文字列を複数のファイルに分けると、特にローカリゼーションの目的で便利だと思います。次のポイントに進みます。
はい、フォルダ内values-es
のすべての文字列ファイルの翻訳されたコピーが含まれている限り、他のロケール フォルダ内のローカライズされた文字列にアクセスできvalues
ます。
たとえば、フォルダーに と がある場合、strings.xml
アプリがローカライズされた文字列をスペイン語で表示できるように、これらのファイルもフォルダーに両方あることを確認してください。new_strings.xml
values
values-es
これがあなたのために物事を明確にすることを願っています=)