替换ImageButton上的图像

时间:2013-06-11 09:26:35

标签: android button imagebutton

我是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();
            }
        });

但似乎新图像被绘制,但最重要的是旧图像 画也。 (我可以看到旧图像,在它下面,我可以看到新图像的边缘)。

知道如何做到这一点吗?

谢谢, 奥马尔

1 个答案:

答案 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);
}