-1

より適切に説明するには: たとえば、2 つの言語を使用できます。そのため、英語用の画像とロシア語用の画像があります。両方とも、1 つの描画可能な xml ファイルで参照します。

<selector xmlns:android="http://schemas.android.com/apk/res/android" >

<item android:drawable="@drawable/image_eng"></item>
<item android:drawable="@drawable/image_ru"></item>

</selector>

どのタイプのドローアブル xml ファイルを使用すればよいですか? 状態を設定して検出し、イメージを切り替えるにはどうすればよいですか? 基本的には次のように機能しますandroid:state_

4

2 に答える 2

2

私の理解が正しければ、電話が英語の場合は 1 つの画像を使用し、電話がロシア語の場合は別の画像を使用する必要があります。ドローアブル名ではなく、ドローアブル フォルダーで言語修飾子を使用する必要があります。

したがって、英語の画像を含む drawable-en という名前のフォルダーが作成されます (たとえば、drawable-en/image.png)。次に、ロシア語版の画像を含む drawable-ru という名前の別のフォルダーを用意しますが、同じ名前にする必要があります (drawable-ru/image.png)。

次に、レイアウト XML (またはドローアブルを参照している場所) で @drawable/image を参照するだけです。Android は適切な画像を自動的に選択します。

于 2013-02-06T18:08:56.760 に答える
1

Android リソース ローカリゼーションのしくみをお読みください。

そのためにセレクターを使用したり、何かを強制したりする必要はありません。

画像ファイルを次のフォルダーに入れるだけです。

  • res/drawable-ja
  • res/drawable-ru

あなたのコードでは、次を使用できます。

Drawable draw = getResources().getDrawable(R.drawable.image);

アプリは、電話の言語に基づいて適切なものを選択します

于 2013-02-06T18:12:02.043 に答える