Android上下左右滑動,顯示底層佈局

閒着沒事作了一個小東西。Android的上下左右滑動,顯示底層佈局。能夠作相似於QQ消息列表的刪除功能。git

看效果:
2.gif
 
實現基本原理:
前段時間學習了一下ViewDragHelper類,大概的就是經過這個類來控制的上下左右的滑動,方便的不少啊,也是很簡單的代碼,能夠參考我以前的關於ViewDragHelper的博客文章,這裏面主要作的工做就是對觸摸事件的傳遞,須要將觸摸事件傳遞給底層的佈局。
 @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        switch (ev.getAction()) {
        case MotionEvent.ACTION_DOWN:
            startX = (int) ev.getX();
            startY = (int) ev.getY();
            if (bottomState == DEFULT_BOTTOM || bottomState == DEFULT_TOP) {
                bottomView.dispatchTouchEvent(ev);
            }
            topView.dispatchTouchEvent(ev);
            break;
        case MotionEvent.ACTION_UP:
            int moveX2 = (int) ev.getX();
            int moveY2 = (int) ev.getY();
            if (Math.abs((moveY2 - startY)) < 8 ) {
                if (getStatusState() == Status.Open && (bottomState == DEFULT_BOTTOM ||       bottomState  ==  DEFULT_TOP )) {
                    bottomView.dispatchTouchEvent(ev);
                }else if (getStatusState() == Status.Close) {
                    topView.dispatchTouchEvent(ev);
                }
            }else {
                onTouchEvent(ev);
                return true ;
            }
            break;
        }
        return super.dispatchTouchEvent(ev);
    }  
 
 
源碼地址:   http://pan.baidu.com/s/1c0q2VRy 
 
 
 
個人github地址:https://github.com/flyme2012
個人博客地址:http://www.cnblogs.com/flyme2012/





附件列表

相關文章
相關標籤/搜索