码迷,mamicode.com
首页 > 移动开发 > 详细

Android学习笔记(二四): 多页显示-SlidingDrawer的使用

时间:2015-03-29 23:26:17      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:

技术分享 技术分享 技术分享
这个图可以在Android的doc中,误操作,将原来图片删去,所以上面只是范例,没有透明效果

 

SlideDrawer是多个(两个页面)的一种显示方式。如上左图所示,普通的,我们显示Hello的Label,当我们按下面的SlidingDrawer的ImageView,即右图所示图标时,可以将SlideDrawer的内容显示上去,如中图。SlidingDrawer可以在Open和Close两个状态之间切换。Open时覆盖,不是所有的Layout都能支持这种叠加覆盖,作为SlidingDrawer的container,例如LinearLayout就不可以,一般使用RelativeLayout和FrameLayout。下面是例子的XML文件,采用了FrameLayout作为容器:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:background="#FF8888CC">
  <TextView android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:textStyle="bold"
    android:gravity="center"
    android:text="Hello" /> <!-- 我们采用了简单的TextView表示原本页的内容,在SlidingDrawer处于Close时显示,如左图-->
  <SlidingDrawer android:id="@+id/c96_drawer"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    <!-- SlidingDrawer中包含两个重要参数handle和content,类似于Tab的标签和内容,我们需要在这里设定相关的id,以便引用-->
    android:handle="@+id/c96_handle"
    android:content="@+id/c96_content" >

           <ImageView android:id="@id/c96_handle" <!-- 和SlidingDrawer的handle的id相一致,一般而言会是一个Image,当然我们也可以设置为Button等其他,只是美观上欠佳。-->
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:src="@drawable/tray_handle_normal" />
           <Button android:id="@id/c96_content"  <!-- 和SlidingDrawer的content的id相一致,这里我们简单用Button来处理-->
             android:layout_width="fill_parent"
             android:layout_height="fill_parent"
             android:text="I am in Here" />
   </SlidingDrawer>
</FrameLayout>

源文件无须特别处理,对于SlidingDrawer,可以open(), close() , toggle() ,也可以采用动画的方式anmiateOpen(),animateClose()和animateToggle()。可以在XML中设置android:animateOnClick ="true" ,缺省为真。

我们还可以设置lock()和unlock()。

我们可以对SlidingDrawer的事件进行监听:openen,closed,scrolled(用户拖拽标签)。例如:setOnDrawerCloseListener(SlidingDrawer.OnDrawerCloseListener onDrawerCloseListener)。

相关链接:我的Andriod开发相关文章

Android学习笔记(二四): 多页显示-SlidingDrawer的使用

标签:

原文地址:http://www.cnblogs.com/mzsoft/p/4376638.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!