• SlidingPaneLayout实践


    SlidingPaneLayout是官方支持的左侧导航控件,效果与SlidingMenu类似。
    api设计合理,使用非常简单。
    来看一下效果吧!
     
     

    如何使用

    使用方法

    布局文件如下:
    <android.support.v4.widget.SlidingPaneLayout>
         <ViewLeft/>
         <ViewContent/>
    </android.support.v4.widget.SlidingPaneLayout>
    SlidingPaneLayout的width必须指明大小或match_parent,否则抛错。
     
    设置了布局文件,就已经实现了SlidingPane的效果了,现在已经具有了滑动的功能。
    通过配置ViewLeft和ViewContent的widthheight,我们可以实现不同的效果。
    不过大部分app使用的都是ViewLeft(width=wrap_conent)和ViewContent(width=match_parent)的组合。

    API

    SlidingPaneLayout的原声效果能满足大部分需求,但是也支持一些自定义效果,需要我们通过api来实现了。
    官方文档的API说明没太看懂,写了个demo研究了一下,大部分api也就懂了,整理如下:
     
    setPanelSlideListener
    设置滑动监听器。open/close/slide状态都能监听。这个方法应该是比较重要的。
     
    setCoveredFadeColor
    设置ViewLeft的衰变颜色。可以理解为从open状态到close状态时候渐变的颜色,从自身的颜色渐变到衰变颜色。
     
    setSliderFadeColor
    设置ViewContent的衰变颜色。可以理解为从close状态到open状态时候渐变的颜色,从自身的颜色渐变到衰变颜色。
     
    openPane/closePane
    这两个API比较简单,就是open和close动作的API接口。
     
    isOpen
    这个是判断状态的,open呢还是close呢。
     
    isSlideable
    这个api不是很理解了,感觉有滑动效果的都是true。没有滑动效果的话,这个控件也就没什么价值了。
     
    setParallaxDistance
    这个API不是很懂,但是设置了之后比较酷炫,有点像是ScaleAnimation的效果。 
  • 相关阅读:
    hdu1754 I Hate It
    51nod 1174 1174 区间中最大的数
    51nod1305 Pairwise Sum and Divide
    51nod 1622 集合对[算法马拉松19 C]
    51nod1265 四点共面
    51nod 1244 莫比乌斯函数之和
    51nod 1240 莫比乌斯函数
    51nod 1113 矩阵快速幂
    51nod 1264 线段相交(几何)
    51nod 1412 AVL树的种类(dp)
  • 原文地址:https://www.cnblogs.com/puff/p/5047795.html
Copyright © 2020-2023  润新知