Android SlidingDrawer 抽屉效果的实现

 更新时间:2013年04月19日 16:43:47   作者:  
本篇文章小编为大家介绍,Android SlidingDrawer 抽屉效果的实现。需要的朋友参考下

SlidingDrawer隐藏屏外的内容,并允许用户通过handle以显示隐藏内容。它可以垂直或水平滑动,它有俩个View组成,其一是可以拖动的handle,其二是隐藏内容的View.它里面的控件必须设置布局,在布局文件中必须指定handle和content。

1、布局layou文件

复制代码 代码如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
<SlidingDrawer
  android:id="@+id/slidingdrawer"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:content="@+id/content"
  android:handle="@+id/handle"
  android:orientation="vertical" >
  <Button
    android:id="@+id/handle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="SlidingDraser" />
  <LinearLayout <!--隐藏的内容-->
    android:id="@+id/content"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#00ffaa" >
    <Button
      android:id="@+id/button"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Button" />
    <EditText
      android:id="@+id/editText"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content" />
  </LinearLayout>
</SlidingDrawer>
</LinearLayout>


 2、下面是运行程序之后的界面

另:可在drawable中添加文件

复制代码 代码如下:

    <?xml version="1.0" encoding="utf-8"?> 
    <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
        <item android:state_window_focused="false" android:state_enabled="true" android:drawable="@drawable/handle_normal" /> 
        <item android:state_pressed="true" android:drawable="@drawable/handle_pressed" /> 
        <item android:state_focused="true" android:state_enabled="true" android:drawable="@drawable/handle_focused" /> 
        <item android:state_enabled="true" android:drawable="@drawable/handle_normal" /> 
        <item android:state_focused="true" android:drawable="@drawable/handle_focused" /> 
    </selector> 

总结:

1、重要属性

  android:allowSingleTap:指示是否可以通过handle打开或关闭

  android:animateOnClick:指示是否当使用者按下手柄打开/关闭时是否该有一个动画。

  android:content:隐藏的内容

  android:handle:handle(手柄)

2、重要方法

  animateClose():关闭时实现动画。

  close():即时关闭

  getContent():获取内容

  isMoving():指示SlidingDrawer是否在移动。

  isOpened():指示SlidingDrawer是否已全部打开

  lock():屏蔽触摸事件。

  setOnDrawerCloseListener(SlidingDrawer.OnDrawerCloseListener onDrawerCloseListener):SlidingDrawer关闭时调用

  setOnDrawerOpenListener

  setOnDrawerScrollListener

  unlock():解除屏蔽触摸事件。

  toggle():切换打开和关闭的抽屉SlidingDrawer。

相关文章

  • Android微信端的下拉刷新功能

    Android微信端的下拉刷新功能

    在微信公众号内,在面对下拉刷新这个问题上,Android和iOS都自己的表现方式。下面通过本文给大家分享Android微信端的下拉刷新功能,需要的朋友参考下吧
    2017-06-06
  • Android仿视频加载旋转小球动画效果的实例代码

    Android仿视频加载旋转小球动画效果的实例代码

    这篇文章主要介绍了Android仿视频加载旋转小球动画效果的实例代码,文中给大家提到了PathMeasure的用法,介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • Android自定义控件实现下拉刷新效果

    Android自定义控件实现下拉刷新效果

    这篇文章主要为大家详细介绍了Android自定义控件实现下拉刷新效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • 手机方向传感器的缺点及解决方法探究

    手机方向传感器的缺点及解决方法探究

    今天小编就为大家分享一篇关于手机方向传感器的缺点及解决方法探究,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • 浅析Android加载字体包及封装的方法

    浅析Android加载字体包及封装的方法

    这篇文章主要介绍了Android加载字体包及封装的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • Flutter中如何实现无Context跳转详解

    Flutter中如何实现无Context跳转详解

    这篇文章主要给大家介绍了关于Flutter中如何实现无Context跳转的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Flutter具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • Android Studio下载更新Android SDK网络异常或无法下载

    Android Studio下载更新Android SDK网络异常或无法下载

    这篇文章主要介绍了Android Studio下载更新Android SDK网络异常或无法下载的相关资料,需要的朋友可以参考下
    2017-04-04
  • Kotlin中Stack与LinkedList的实现方法示例

    Kotlin中Stack与LinkedList的实现方法示例

    这篇文章主要给大家介绍了关于Kotlin中Stack与LinkedList实现的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-06-06
  • android RecycleView实现下拉刷新和上拉加载

    android RecycleView实现下拉刷新和上拉加载

    这篇文章主要为大家详细介绍了android RecycleView实现下拉刷新和上拉加载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • Android点击EditText文本框之外任何地方隐藏键盘的解决办法

    Android点击EditText文本框之外任何地方隐藏键盘的解决办法

    这篇文章主要介绍了Android点击EditText文本框之外任何地方隐藏键盘的解决办法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-01-01

最新评论