android drawable选择自定义

时间:2013-02-06 18:05:28

标签: android android-drawable

为了更好地解释:例如,我有两种语言可用。这就是为什么我会为英语和俄罗斯形象的图像。我在两个可绘制的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_

一样

2 个答案:

答案 0 :(得分:2)

如果我理解正确,您希望在手机使用英语时使用一张图像,而在手机使用俄语时使用另一张图像。您应该在drawable文件夹上使用语言修饰符,而不是在drawable名称中。

所以,你会有一个名为drawable-en的文件夹,它包含你的英文图像(例如,drawable-en / image.png)。然后,有另一个名为drawable-ru的文件夹,其中包含您的俄语版图像,但它必须具有相同的名称(drawable-ru / image.png)。

然后,在您的布局XML中(或者您引用drawable的任何地方)只需引用@ drawable / image ... Android将自动选择合适的图像。

答案 1 :(得分:1)

请阅读Android resource Localization的工作原理。

您不必使用选择器,也不必强迫任何东西。

只需将您的图片文件放在以下文件夹中:

  • RES /抽拉烯
  • RES /抽拉茹

在您的代码中,您可以使用:

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

该应用会根据手机的语言选择合适的一种