0

如何从代码中更改按钮的状态。我无法使用 xml 文件,因为我从服务器获取图像。

使用 :

Drawable d = new BitmapDrawable(getResources(),bitmap);

我有drawable,但是如何分配不同的状态,然后为按钮附加相应的图像?

4

1 回答 1

1

在 xml 中,我们使用<selector>element 来做到这一点。在代码中,我们使用StateListDrawable

StateListDrawable content = new StateListDrawable();
Drawable pressedDrawable = new BitmapDrawable(getResources(),bitmap);
//Your other drawables (focused, .....)

content.addState(new int[] { android.R.attr.state_pressed }, pressedDrawable);
//Add the other drawables the same way

Button button = (Button) view.findViewById(R.id.my_button);
button.setBackground(content);
于 2012-08-13T19:55:03.773 回答