SlidingDrawer的使用(过时)

本文介绍了Android中SlidingDrawer控件的使用方法,包括其重要属性和方法,提供了具体的布局文件示例及界面代码,展示了如何监听SlidingDrawer的各种状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

测试例子:

注意:

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

二、重要属性

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

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

  android:content:隐藏的内容

  android:handle:handle(手柄)

三、重要方法

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

  close():即时关闭

  getContent():获取内容

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

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

  lock():屏蔽触摸事件。

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

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

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

布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    <SlidingDrawer
        android:handle="@+id/handle"
        android:content="@+id/content"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="horizontal"
        android:id="@+id/slidingdrawer">
		<ImageView 
		    android:id="@id/content"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:contentDescription="image"
		    android:src="@drawable/open"/>
		<TextView
		    android:id ="@id/handle"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:text="handle"/>
	</SlidingDrawer>
</LinearLayout>
界面代码:

import android.widget.ImageView;
import android.widget.SlidingDrawer;
import android.widget.SlidingDrawer.OnDrawerCloseListener;
import android.widget.SlidingDrawer.OnDrawerOpenListener;
import android.widget.SlidingDrawer.OnDrawerScrollListener;
import android.widget.TextView;


@SuppressWarnings("deprecation")
public class SlidingDrawerActivity extends Activity{
	private SlidingDrawer slidingDrawer;
	private ImageView imageView;
	private TextView textView;
	private boolean flag = false;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		this.setContentView(R.layout.slidingdrawer);
		slidingDrawer = (SlidingDrawer) this.findViewById(R.id.slidingdrawer);
		slidingDrawer.setOnDrawerOpenListener(new OnDrawerOpenListener() {  
            public void onDrawerOpened(){  
                System.out.println("-------->  打开抽屉");                  
            }});
		slidingDrawer.setOnDrawerCloseListener(new OnDrawerCloseListener() {  
	            public void onDrawerClosed() {  
	                 System.out.println("-------->  关闭抽屉");    
	            }  
	        });  
		slidingDrawer.setOnDrawerScrollListener(new OnDrawerScrollListener(){

			@Override
			public void onScrollEnded() {
				//textView.setText("end scroll");
				System.out.println("end");
			}

			@Override
			public void onScrollStarted() {
				//textView.setText("start scroll");
				System.out.println("start");
			}
			
		});
	}	
}

效果:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值