管教管教那些不听话的view

来源:互联网 发布:华南理工网网络教育 编辑:程序博客网 时间:2024/06/02 16:39


废话不多说,先上效果图。




呃 ,不好意思  不是这张,是这个。


就是受不了新建项目完,这货就猥琐的存在于右下角的那个旮沓里。叫它往西它不动,叫它往东它也不东。想起我这暴脾气,上去就是两巴掌,不给他点颜色看看,还真以为自己了不起了。

这里也教教大家怎么管教那些个不听话的。很简单,打他几下就搞定了。让他干啥他就老老实实的干啥。

方法很简单。setOnTouchListener 就好了。


private int x0, y0, x1, y1;

// 1.

 fab.setOnTouchListener(new View.OnTouchListener() {            @Override            public boolean onTouch(View v, MotionEvent event) {                switch (event.getAction()) {                    case MotionEvent.ACTION_DOWN:                        x0 = (int) event.getX();                        y0 = (int) event.getY();                        break;                    case MotionEvent.ACTION_MOVE:                        x1 = (int) event.getX() - x0;                        y1 = (int) event.getY() - y0;                        fab.layout(fab.getLeft() + x1, fab.getTop() + y1, x1 + fab.getRight(), y1 + fab.getBottom());                        //下面两句和上面一句式相同的道理。//                        fab.offsetLeftAndRight(x1);//                        fab.offsetTopAndBottom(y1);                        break;                    case MotionEvent.ACTION_UP:                        break;                }                return true;            }        });


// 2.  这个要依赖nineoldandroids

scroll.setOnTouchListener(new View.OnTouchListener() {    @Override    public boolean onTouch(View v, MotionEvent event) {        x1 = (int) event.getRawX();        y1 = (int) event.getRawY();        switch (event.getAction()) {            case MotionEvent.ACTION_MOVE:                int x = x1 - x2;                int y = y1 - y2;                Log.e("Move", x + "," + y);                int tx = (int) (ViewHelper.getTranslationX(scroll) + x);                int ty = (int) (ViewHelper.getTranslationY(scroll) + y);                ViewHelper.setTranslationX(scroll, tx);                ViewHelper.setTranslationY(scroll, ty);                break;        }        x2 = x1;        y2 = y1;        return true;    }});




项目地址:https://github.com/103style/MotionEvent




3 1
原创粉丝点击