2015-05-01 229 views
0

在下面的代码中,我尝试在第一次单击(工作)时更改图像。但是,第二次点击它应该改回到原始状态。同样,它应该同时改变每次点击。请解释我的逻辑。我是Android新手。在此先感谢我想同时更改图像按钮的图像onClick事件

ib_accordion1 = (ImageButton)findViewById(R.id.ib_accordion1); 
ib_accordion1.setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      ib_accordion1.setImageResource(R.drawable.minus_icon); 
     }          
}); 
+0

您可以在FirstClick上设置**布尔型* true,在第二次点击时设置为false。 – Wizard

+0

Thnaks它为我工作。 –

+0

也许你可以upVote评论alteast;) – Wizard

回答

2

只需使用一个简单的布尔值来确定它的状态。

boolean isOriginal = true; 

ib_accordion1 = (ImageButton)findViewById(R.id.ib_accordion1); 
       ib_accordion1.setOnClickListener(new OnClickListener() 
       { 

        @Override 
        public void onClick(View v) 
        { 
         isOriginal = !isOriginal; 
         ib_accordion1.setImageResource(isOriginal ? R.drawable.original : R.drawable.minus_icon);           
       }); 
+0

工作。谢谢@Bojan –

+0

没问题,快乐编码! –

1
boolean original = true;  

img.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 

      original = !original; 
      img.setBackgroundResource(original ? R.drawable.ic_action_new_light 
        : R.drawable.ic_action_chat_light); 
     } 
    }); 

其实,我上面已经评论编辑,我感谢西Chakradhar萨纳工作。