[英]Android XML ImageView changing Image
我正在尝试一些功能,并且基本上是在学习东西,但我不知道为什么这不起作用。 我的意思是,当我第一次触摸图像时,图像更改为R.drawable.buttondown,但是随后当我移动手指或释放手指时,其他情况将不起作用,并且图像也不再更改。 你能告诉我为什么吗?
icon = (ImageView)findViewById(R.id.imageView1);
icon.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()){
case MotionEvent.ACTION_DOWN:
icon.setImageResource(R.drawable.buttondown);
break;
case MotionEvent.ACTION_UP:
icon.setImageResource(R.drawable.ic_launcher);
break;
case MotionEvent.ACTION_MOVE:
icon.setImageResource(R.drawable.abc_ab_bottom_transparent_dark_holo);
break;
}
return false;
}
您需要返回true来通知android您已经消耗了该事件。
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()){
case MotionEvent.ACTION_DOWN:
icon.setImageResource(R.drawable.buttondown);
break;
case MotionEvent.ACTION_UP:
icon.setImageResource(R.drawable.ic_launcher);
break;
case MotionEvent.ACTION_MOVE:
icon.setImageResource(R.drawable.abc_ab_bottom_transparent_dark_holo);
break;
}
return true;
}
从文档:
如果侦听器已消耗事件,则为true,否则为false。
如果返回true,则表示您刚刚使用了此事件,并且对其他事件感兴趣。 如果返回false,则将保留ACTION_DOWN,因为未使用该事件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.