基于HorizontalScrollView的anroid侧滑栏的实现

Android 侧滑栏使用

方法一、采用HorizontalScrollView

         主要思路:通过android系统HorizontalScrollView


大概layout如此

<FrameLayout
         <menulist
                   Menuof user group
                   />
         <HorizontalScrollView implemnets  HorizontalScrollView
                   <LinearLayoutorgination:horizontal
                            Nothingin here
                            />
                   />


但是运行时,会向LinearLayout添加一个空白view和你的联系人列表

OnGlobalLayoutListener,这个作用就是当HorizontalScrollView发生重绘的时候调用只运行一次。

主要作用,将children中存放的view(空白view和联系人列表view),设置宽和高,然后添加到,parent(Linearlayout)中。这一步可以自己做。其实这个过程也没有太多必要,只要自己指定宽高就好,最好使用比例设定,以适应多尺寸屏幕。

大致的关于侧边栏View的实现如此。

如何响应View的操作,简要提一下,设置一个Boolean型的MenuOut用于表示menu是否展开。

还有一点要注意就是,对HorizontalScrollView实现了OnScrollChanged()方法,当你用手滑动标题栏拖动时,如果当前坐标小于menuwidth/2,就直接设置menuwidth=0,如果不小于,就保持原来width。

感觉复杂,没有必要像作者那样。 http://blog.csdn.net/lamp_zy/article/details/7857655


鄙人觉得,重点在于

1、向linearlayout添加两个view,

2、设置空白view的宽度,

3、设置menubutton的响应事件,如果没有展开,就scrollto(你想要移动到的位置,注意与空白view宽度的结合),如果已经展开同样需要scrollto(原始位置)。

4、实现OnScrollChanged接口,如果滑动了就那么就设置移动位置。


建议大家如果想采用这个这个方法实现,侧滑栏的,自己根据思路写响应事件处理过程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值