我是andorid的新手,我正在尝试做一件简单的事情: 单击按钮A时,我想替换显示的图像 在ImageButton B。
我尝试过各种各样的事情:
msortByButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//Test change image
mdefineLocationButton.setBackgroundResource(0);
mdefineLocationButton.invalidate();
mdefineLocationButton.setBackgroundResource(R.drawable.notdefined);
mdefineLocationButton.invalidate();
mdefineLocationButton.refreshDrawableState();
}
});
但似乎新图像被绘制,但最重要的是旧图像 画也。 (我可以看到旧图像,在它下面,我可以看到新图像的边缘)。
知道如何做到这一点吗?
谢谢, 奥马尔
答案 0 :(得分:3)
使用setImageResource (int resId)
(http://developer.android.com/reference/android/widget/ImageView.html#setImageResource(int))
ImageButtons可以有背景和实际图像src。我的猜测是你最初设置图像src,现在在代码中设置背景。所以两者都表明了。
@Override
public void onClick(View v) {
mdefineLocationButton.setImageResource(R.drawable.notdefined);
}