如何在不知道图像名称的情况下更改Android中按钮的背景图像?

时间:2013-04-06 21:46:28

标签: java android

我在drawable文件夹中有一些图像文件。图像的名称就像button1,button2,button3 ......还有一个计数变量,只要点击一个按钮就会增加一个。我想做的是每当有人点击按钮图像时按钮应更改为与当前计数值对应的图像。

我试过

buttons[0][0].setBackground(R.drawable.button+count);

但它不起作用

1 个答案:

答案 0 :(得分:2)

您无法直接访问它。您必须使用其名称获取资源:

private Drawable getDrawableResourceByName(int count) {
    String packageName = getPackageName();
    int resId = getResources().getIdentifier("button" + String.valueOf(count), "drawable", packageName);
    return getResources().getDrawable(resId);
}

然后将其用作:

buttons[0][0].setBackgroundDrawable(getDrawableResourceByName(count)); //setBackground() only works with drawables from API 16