码迷,mamicode.com
首页 > 其他好文 > 详细

实现对view的单击双击监听

时间:2014-12-09 19:47:25      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:imageview   x   双击单击图片放大   

这里只介绍使用方法:

1.实现一个GestureDetector监听器

2.设置setOnDoubleTapListener监听

3.实现onDoubleTap(执行双击操作)

4.实现onSingleTapConfirmed(执行单击操作)


// 手势监听器

GestureDetector  mGestureDetector = new GestureDetector(imageView.getContext(),
                    new GestureDetector.SimpleOnGestureListener() {


                        // forward long click listener
                        @Override
                        public void onLongPress(MotionEvent e) {
                            // 可执行长按操作
                        }
                    });


// 实现双击监听(其中包含了单击的监听)
            mGestureDetector.setOnDoubleTapListener(this);


public final boolean onDoubleTap(MotionEvent ev) {

// 执行双击事件

}


// 执行单击事件

public final boolean onSingleTapConfirmed(MotionEvent e) {


// 以下方法判断是单击在指定view上或是view外部

//用imageview为例

        ImageView imageView = getImageView();

// 单击imageview

        if (null != imageView) {

     if (null != mPhotoTapListener) { // 单击imageview监听器

                final RectF displayRect = getDisplayRect();

                if (null != displayRect) {
                    final float x = e.getX(), y = e.getY();


                    // Check to see if the user tapped on the photo
                    if (displayRect.contains(x, y)) {


                        float xResult = (x - displayRect.left)
                                / displayRect.width();
                        float yResult = (y - displayRect.top)
                                / displayRect.height();

// 单击imageview 回调方法
                        mPhotoTapListener.onPhotoTap(imageView, xResult,
                                yResult);
                        return true;
                    }
                }

            }

// 单击imageview外部监听

            if (null != mViewTapListener) {
               //执行单击imageview外部事件
            }
        }
        return false;
    }

实现对view的单击双击监听

标签:imageview   x   双击单击图片放大   

原文地址:http://blog.csdn.net/u013626215/article/details/41826797

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!