Android:如何获取imageButton的src

时间:2013-09-22 20:12:17

标签: android imagebutton

我有一个ImageButton,当我点击它时,我想改变图像,但只有这是一个特殊图像(实际上是默认图像)。

我的xml:

<ImageButton
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/button1"
android:src="@drawable/imgdefault" />

我有一个听众:

public OnClickListener button1Listener = new OnClickListener() {

     @Override
     public void onClick(View v) {
          if (button1.getDrawable().equals(getResources().getDrawable(R.drawable.imgdefault))) {
               button1.setImageResource(R.drawable.newImg);
    }
}

但似乎我的“如果”永远不会成真。所以我可以检查这是否仍然是我在ImageButton上的默认图像?

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

有很多方法可以做到,我想到的是:

Boolean clicked = new Boolean(false);
button1.setTag(clicked); // wasn't clicked
button1.setOnClickListener( new OnClickListener() {

     @Override
     public void onClick(View v) {
          if( ((Boolean)button1.getTag())==false ){
              button1.setImageResource(R.drawable.newImg);
              button1.setTag(new Boolean(true));
          }
    }
});