`
dou_shini8820
  • 浏览: 80819 次
社区版块
存档分类
最新评论

anroid组件之隐式抽屉SlidingDrawer

 
阅读更多

android的抽屉效果有SlidingDrawer组件,主要作为菜单显示更多信息,节省屏幕空间。使用简单,用法如下:

 

1、在xml布局文件中,添加一个SlidingDrawer的标签,内嵌一个ImageView和一个ListView,其中ImageView用来做抽开抽屉的手柄,ListView的内容可以作为抽屉打开有显示的内容,xml如下:

<SlidingDrawer 
    android:id="@+id/slidingdrawer"
    android:layout_width="fill_parent"
  	android:layout_height="fill_parent"
  	android:orientation="horizontal"
  	android:handle="@+id/hanler"<!--这里的handle很重要,就是下面的图片ID-->
  	android:content="@+id/content"<!--这里的content很重要,就是下面的ListView-->
    >
    <ImageView
        android:id="@+id/hanler"
        android:layout_width="wrap_content"
  		android:layout_height="wrap_content"
  		android:src="@drawable/ic_launcher"/>
    <LinearLayout 
        android:id="@+id/content"
        android:layout_width="fill_parent"
  		android:layout_height="wrap_content"
        ></LinearLayout>
</SlidingDrawer>

 

2、在java代码中,主要做2件事:

 

一、给ListView设置数据源Adapter,这个不是SlidingDrawer必须的,然后把listView添加到抽屉组件中

二、给SlidingDrawer设置监听事件,有打开的、关闭、拖动

 

详细代码我都贴出来:

 

@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	
		drawer=(SlidingDrawer) findViewById(R.id.slidingdrawer);
		layout=(LinearLayout) findViewById(R.id.content);
		handler=(ImageView) findViewById(R.id.hanler);
		//创建listview
		listView=new ListView(this);
		//geilistview设置数据源Adapter
		listView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,data));
		layout.addView(listView);
		
		drawer.setOnDrawerOpenListener(new onDrawerOpenListenerImpl());
		drawer.setOnDrawerCloseListener(new onDrawerCloseListenerImpl());
		drawer.setOnDrawerScrollListener(new onDrawerScrollListenerImpl());
	}

 

     这个是抽屉的打开事件

 

private class onDrawerOpenListenerImpl implements OnDrawerOpenListener{
		@Override
		public void onDrawerOpened() {
			Toast.makeText(MainActivity.this, "抽屉正在打开", Toast.LENGTH_SHORT).show();
		}
		
	}

 

   这个是抽屉的关闭事件

private class onDrawerCloseListenerImpl implements OnDrawerCloseListener{
@Override
public void onDrawerClosed() {
Toast.makeText(MainActivity.this, "抽屉关闭", Toast.LENGTH_SHORT).show();
}
}

 

       抽屉的拖动事件

private class onDrawerScrollListenerImpl implements OnDrawerScrollListener{
 
@Override
public void onScrollEnded() {
Toast.makeText(MainActivity.this, "抽屉拖动结束", Toast.LENGTH_SHORT).show();
}
 
@Override
public void onScrollStarted() {
Toast.makeText(MainActivity.this, "抽屉正在拖动", Toast.LENGTH_SHORT).show();
}
 
}

 

5
0
分享到:
评论

相关推荐

    SlidingDrawer隐式抽屉之基础

    在Android开发中,SlidingDrawer是早期用于实现滑动抽屉效果的一个组件,它允许用户通过拖动一个可隐藏的视图来显示或隐藏内容。这个组件在Android API Level 8(即Android 2.2 Froyo)及之前版本中被广泛使用,但在...

    2011.09.07(2)——— android 跨进程通信之隐式intent

    这篇博客"2011.09.07(2)——— android 跨进程通信之隐式intent"主要探讨了Android中的隐式Intent如何用于实现IPC。隐式Intent是一种灵活的机制,让一个应用能够启动另一个并未明确声明的组件,只要后者声明了可以...

    Android组件与数据存储安全分析及实战

    本篇文章将深入分析Android四大组件的安全性和数据存储安全,并提供实战案例。 首先,Android四大组件包括Activity、Broadcast Receiver、Service和Content Provider,它们是构建Android应用程序的基础。每一个组件...

    Android中使用隐式方式打开一个新的Activity

    在Android应用开发中,Activity是构成应用程序的基本组件之一,它代表了用户与应用交互的界面。当需要在不同Activity之间跳转时,Android提供了两种Intent类型:显式Intent和隐式Intent。本篇将深入探讨如何使用隐式...

    android中使用隐式intent完成应用的步骤及核心代码2022优秀文档.pptx

    Android 中使用隐式 Intent 完成应用的步骤及核心代码 Android 中的 Intent 机制是一种在不同组件之间传递请求消息的机制。Intent 可以分为显式 Intent 和隐式 Intent 两种。显式 Intent 是指明确指出了目标组件...

    android UI进阶之android中隐藏的layout 抽屉的使用方法

    在本文中,我们将探讨如何在Android应用中使用`SlidingDrawer`组件来实现类似的功能。 首先,让我们了解一下`SlidingDrawer`的基本使用方法。`SlidingDrawer`是Android SDK中提供的一种视图,用于创建可滑动的抽屉...

    Android review 显示意图激活与隐式意图激活

    在Android应用开发中,意图(Intent)是一种强大的通信机制,用于连接应用的不同组件,如活动(Activity)、服务(Service)和Broadcast Receiver。本篇将深入探讨Android中的两种主要意图类型:显示意图(Explicit ...

    Android显示意图隐式意图的区别[文].pdf

    **隐式意图**:隐式意图则不指定具体的组件,而是通过设置动作(Action)、类别(Category)、数据(URI和数据类型)等信息,让Android系统根据这些信息自动找到最合适的组件来处理Intent。比如,拨打电话的Intent,...

    android显示意图和隐式意图的区别

    在Android开发过程中,`Intent`是应用内部各组件之间进行通信的重要机制之一。通过`Intent`可以启动Activity、Service等组件,并且可以在组件间传递数据。根据使用场景的不同,`Intent`分为两种类型:显示Intent...

    Android中使用隐式Intent完成界面切换的代码清单.pdf

    在Android应用开发中,Intent是连接应用程序不同组件的桥梁,用于启动新的Activity或者Service,以及在组件间传递数据。隐式Intent是一种不直接指定接收者的Intent类型,它通过指定一个Action、Category、Data等信息...

    android中隐式intent的使用说明2022优秀文档.pptx

    Android 中的 Intent 机制是 Android 应用程序之间通信的基础,Intent 负责描述一次操作的动作、动作涉及数据、附加数据等信息,然后 Android 系统根据 Intent 的描述找到对应的组件,并将 Intent 传递给调用的组件...

    android组件android组件

    Intent分为显式Intent和隐式Intent,显式Intent指定目标组件,而隐式Intent则基于Action、Data、Category等元数据匹配合适的组件。 此外,Android组件的进程模型是可配置的,组件可以在同一个进程或不同进程中运行...

    Android开发的四大组件

    Intent有两种类型:显式Intent(指定目标组件)和隐式Intent(仅指定操作和数据,由系统匹配合适的组件处理)。 **Activity栈与状态** Activity的运行状态是由Activity栈管理的。每次启动新的Activity,它会被压入...

    android\深入Android 组件入门

    在深入探讨Android组件之前,首先理解Android系统的基石之一——组件化设计。组件是Android应用程序的基础构建块,它们各自承担特定的任务,并通过明确的接口与其他组件交互。这种组件化设计允许开发者将应用程序...

    Android中使用隐式Intent完成界面切换的任务说明.pdf

    在Android应用开发中,Intent是连接应用程序组件的重要桥梁,它用于在不同的组件之间传递消息,实现界面间的切换、启动服务、发送广播等操作。本文主要关注如何使用隐式Intent来完成界面之间的切换任务。 首先,...

    android四大组件详解

    在Android系统中,四大组件是构建应用程序的核心元素,它们分别是Activity、Service、BroadcastReceiver和Content Provider。这四个组件各自承担着不同的职责,共同构成了Android应用的骨架。 **Activity**是用户与...

    Android组件综合实例

    在Android应用开发中,四大组件(Activity、Service、BroadcastReceiver、ContentProvider)是构建应用程序的基础,而除此之外,还有一些用户界面组件同样至关重要,如RadioButton、CheckBox、ListView和Spinner。...

    Android中使用隐式Intent完成猜数游戏的代码清单.pdf

    在Android应用开发中,Intent是一种强大的机制,用于在不同的组件之间传递数据和启动操作。在这个“猜数游戏”中,隐式Intent被用来实现主活动(MainActivity)与返回活动(BackActivity)之间的通信。下面我们将...

    Android Studio Intent隐式启动,发短信,拨号,打电话,访问网页等实例代码

    在Android开发中,Intent是应用程序之间进行交互的重要机制,它用于启动其他Activity、Service或BroadcastReceiver,甚至可以用来启动IntentFilter匹配的任何组件。本文将详细介绍如何在Android Studio中使用Intent...

Global site tag (gtag.js) - Google Analytics