Android自定义ListView实现侧滑子菜单

Posted HyperionChen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android自定义ListView实现侧滑子菜单相关的知识,希望对你有一定的参考价值。

惯例,先放效果图,DEMO在最后



想当年博主刚接触android的时候,看到这个效果心中只有膜拜啊,如果慢慢的自己水平也上来了,就把当年的一个想法给圆满了吧。

好了,废话不多说,先总结总结这个效果:

  • 首先是需要自定义ListView,这点是必须的,然后在ListView的onTouchEvent方法中对事件进行处理
  • 普通的Item的话,是没办法实现这样侧滑的,即使你塞一个HorizontalScrollView进去都不行,所以也必须自定义一个ItemView实现左右侧滑
  • 由于ListView的layout_width不一定是MATCH_PARENT,也可能是定值比如300dp,这个时候我们就需要建立一种机制来保证ItemView的宽度和ListView的宽度匹配,毕竟ItemView包含了两个View,一个是正文的ContentView,一个是菜单的MenuView。
首先我从自定义ListView开始讲起,这个ListView需要完成两件事:事件分发和高度匹配。首先来看高度匹配:

以上是关于Android自定义ListView实现侧滑子菜单的主要内容,如果未能解决你的问题,请参考以下文章

Android自定义View之仿QQ侧滑菜单实现

Android自定义LinearLayout实现侧滑布局--SwipeLinearLayout

Android自定义LinearLayout实现侧滑布局--SwipeLinearLayout

android自定义ViewGroup(侧滑菜单)

android:自定义HorizontalScrollView实现qq侧滑菜单

Android给ListView添加侧滑菜单功能