微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android-event.getAction()==当setOnTouchListener返回false时,MotionEvent.ACTION_DOWN不为true

我需要实现onItemLongPressListener和onTouchListener.它们不能一起使用,因此我必须从其他的ontouch列表器中返回false,以使项目长按监听器也被触发.

当我触摸imageButton时,我需要更改图像按钮,但是由于我的触摸监听器返回false,因此图像保持按下状态.

当我不再触摸按钮时,如何更改按钮图像?

imageView.setonTouchListener(new OnTouchListener() {

                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    if (event.getAction() == MotionEvent.ACTION_DOWN) {
                        imageView.setimageResource(mThumbIdspressed[position]);
                    } else {
                        imageView.setimageResource(mThumbIds[position]);
                    }
                    recordAudio.startPlaying(position);

                    return false;
                }
            });

解决方法:

您可以使用GestureDetector(例如SimpleOnGestureListener)进行区分:

> onDown(),类似于ACTION_DOWN
> onSingleTapConfirmed()或onSingleTapUp(),类似于ACTION_UP
> onLongPress()您的长按活动

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐