android怎么实现类似抽屉效果
1个回答
展开全部
你说的效果实现可以分为两个部分:
一、拖拽部分,这部分你实现让scrollview跟着你的手移动
1、给scrollview添加onTouchListener或者自定义scrollview并重载其onTouchEvent方法。
2、根据move不停设置scrollview的坐标
你需要注意的是:event.getX()是你手指的坐标,而不是控件的坐标,很多人能够理解,但有的人写的时候会搞混。
你需要做的是:取得4个坐标——
(1)、你手指点下去的坐标,这个坐标在ACTION_DOWN中获得:primaryTouchCoord,这个坐标要一直保存,所以要在Touch事件外定义(类成员变量);
(2)、你手指当前的坐标curTouchCoord,在每次Touch事件触发的时候用event.getY()获得,即在switch外或者ACTION_MOVE中获得;
(3)、scrollview初始坐标primaryScrollViewCoord,这个坐标也在ACTION_DOWN中获得并且一直保存。
(4)、scrollview最终坐标curScrollViewCoord,在ACTION_UP中获得。
有了这四个坐标,就可以实现了。
一、拖拽部分,这部分你实现让scrollview跟着你的手移动
1、给scrollview添加onTouchListener或者自定义scrollview并重载其onTouchEvent方法。
2、根据move不停设置scrollview的坐标
你需要注意的是:event.getX()是你手指的坐标,而不是控件的坐标,很多人能够理解,但有的人写的时候会搞混。
你需要做的是:取得4个坐标——
(1)、你手指点下去的坐标,这个坐标在ACTION_DOWN中获得:primaryTouchCoord,这个坐标要一直保存,所以要在Touch事件外定义(类成员变量);
(2)、你手指当前的坐标curTouchCoord,在每次Touch事件触发的时候用event.getY()获得,即在switch外或者ACTION_MOVE中获得;
(3)、scrollview初始坐标primaryScrollViewCoord,这个坐标也在ACTION_DOWN中获得并且一直保存。
(4)、scrollview最终坐标curScrollViewCoord,在ACTION_UP中获得。
有了这四个坐标,就可以实现了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询