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)。
分享到:
相关推荐
在Android开发中,`SlidingDrawer`是一个非常实用的组件,它允许用户通过手势从屏幕边缘滑动出一个隐藏的抽屉,常用于存放菜单、设置或其他附加功能。本范例程序深入展示了如何有效地实现这一功能,使得用户界面更加...
这个实例是专为初学者设计的,展示了如何使用SlidingDrawer从底部向上滑动的效果。 首先,我们需要了解SlidingDrawer的基本用法。在布局XML文件中,SlidingDrawer作为顶级容器添加,有两个必需的子元素:一个用于...
6. **兼容性问题**:由于SlidingDrawer在新版本的Android中已不推荐使用,因此在不同版本的Android设备上可能会存在兼容性问题。如果需要在现代Android应用中实现类似功能,可以考虑使用如前面提到的...
1. **在XML布局文件中添加SlidingDrawer**:使用`<SlidingDrawer>`标签,并设置`android:handle`为手柄视图的ID,`android:content`为内容视图的ID。 2. **设置属性**:可以设置抽屉的开启状态(`android:open`)、...
在早期的Android版本中,SlidingDrawer是开发者常用来创建侧边栏菜单的工具,但在Android设计指南推荐使用NavigationView之后,其使用频率有所下降。尽管如此,SlidingDrawer仍然在某些特定场景下有其独特的价值,...
在Android应用开发中,抽屉(SlidingDrawer)是一个非常实用的组件,它允许开发者在屏幕上添加一个可滑动的面板,通常用于隐藏或显示额外的功能或内容。抽屉类在早期版本的Android SDK中被广泛使用,但在后来的版本...
综上所述,虽然 SlidingDrawer 在现代 Android 开发中已较少使用,但理解它的工作原理对于理解滑动抽屉的设计模式和如何在新组件中实现类似效果仍然是有价值的。如果你的项目还在使用 SlidingDrawer,可能需要考虑...
在本篇Android学习笔记中,我们将探讨如何使用SlidingDrawer实现多页显示,并理解其工作原理和相关属性。 首先,SlidingDrawer通常用于在主界面下方或上方滑出额外的内容,例如菜单、设置或附加信息。它有两个主要...
在Android开发中,`SlidingDrawer`是一个非常实用的组件,它允许用户通过手势从屏幕边缘滑出一个隐藏的视图,类似于许多应用中的抽屉式导航菜单。在这个实例中,我们将关注如何实现一个从左侧拉出的`SlidingDrawer`...
用SlidingDrawer注意两点,一个是android:handle(委托要展开的图片加载Layout配置) 和android:content(要展开的Layout Content), 我的csdn博客地址: ...
在Android开发中,SlidingDrawer 是一个非常常见的组件,它允许用户通过拖动来显示或隐藏内容,类似于抽屉的效果。然而,标准的SlidingDrawer组件在某些情况下可能无法满足开发者的需求,比如需要部分数据始终可见。...
总之,虽然SlidingDrawer已不再推荐使用,但了解它的基本原理和使用方法可以帮助我们更好地理解和实现Android中的滑动抽屉效果。在实际项目中,开发者应优先考虑使用更新的组件来保证应用的兼容性和最佳用户体验。
SlidingDrawer hides content out of the screen and allows the user to drag a handle to bring the content on screen. SlidingDrawer can be used vertically or horizontally. A special widget composed of ...
标题与描述中提到的知识点是关于Android开发中的`SlidingDrawer`组件的应用。在Android开发中,`SlidingDrawer`是一种用于创建滑动抽屉效果的布局容器,它允许用户通过触摸屏幕边缘来展开或收起一个包含额外控件的...
然而,随着Android设计指南的更新,Google推荐使用`NavigationView`或`DrawerLayout`来构建侧滑菜单,因为SlidingDrawer已被弃用,不适用于新版本的Android系统。 这个项目包含多种抽屉实例,包括上拉、下拉、左拉...
尽管SlidingDrawer在早期的Android版本中被广泛使用,但它在API 17及以后的版本中已被弃用。因此,对于新项目,开发者通常会转向使用其他替代组件,如`android.support.design.widget.BottomSheetBehavior`(自...
在Android应用开发中,抽屉效果(SlidingDrawer)是一种常见的界面交互元素,它允许用户通过滑动操作从屏幕边缘拉出隐藏的内容区域,通常用于显示菜单或额外的信息。标题"SlidingDrawer抽屉效果可以默认显示一部分...
SlidingDrawer效果想必大家也见到过,它就是1.5模拟器上进入应用程序列表的效果。下面是截图 ...SlidingDrawer android:layout_width=”fill_parent” android:layout_height=”fill_parent” android:handl