可以执行以下操作:
if (colorScheme == 1)
button.setBackgroundResource(R.drawable.button + "_1")
为了使用 R.drawable.button_1 作为配色方案 1 中此按钮的资源,如果 drawable 文件夹中有名为 button_1.png、button_2.png、button_3.png 的文件。(根据所使用的配色方案为同一 UI 元素动态使用不同的资源文件?)
谢谢,
可以执行以下操作:
if (colorScheme == 1)
button.setBackgroundResource(R.drawable.button + "_1")
为了使用 R.drawable.button_1 作为配色方案 1 中此按钮的资源,如果 drawable 文件夹中有名为 button_1.png、button_2.png、button_3.png 的文件。(根据所使用的配色方案为同一 UI 元素动态使用不同的资源文件?)
谢谢,
我使用 getIdentifier() 做了一些类似的事情:
int resId = context.getResources().getIdentifier("button_1","drawable",context.getPackageName());
button.setBackgroundResource(resId);
为了使它是动态的,将需要一些代码。您可以在 xml 中设置布局,如下所示:
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
然后在您的代码中引用它,如下所示:
int resId = context.getResources().getIdentifier("button_1","drawable",context.getPackageName());
Button button = (Button view.findViewById(R.id.button1);
button.setBackgroundResource(resId);
我没有测试过这个,但这应该给你的想法。
放入R.drawable.button_n
一个数组int res[]
,然后调用它们button.setBackgroundResource(res[i])