摘要:
今天,我来分享下,侧滑菜单的实现原理,一般android侧滑的实现原理和步骤如下:
1.使用ViewGroup 放2个view,一个是menu菜单,一个是content内容
2.监听onTouchEvent事件
处理ACTION_MOVE中的leftMargin位置,从而改变menu菜单的滑动位置
当ACTION_UP时,根据显示菜单的宽度,决定将其显示或隐藏动画效果:
(1)使用Scroller这个辅助类实现动画效果
(2)单起一个Thread(或Task)来改变leftMargin的大小来实现动画效果
上面这种方法,当监听ACTION_MOVE时候,当菜单里有listview等view到时候容易引起手势监听的冲突。
为了避免这种问题,我们采用新的方法来做侧滑。主要是做以下两个处理:
1.不继承ViewGroup,而是继承HorizontalScrollView,这样做的好处是HorizontalScrollView已经帮我们做了相关的监听滑动手势冲突的处理,我们不用操心和处理这些问题。
2.计算Menu菜单的大小,并显示 阅读全文