android 隐式抽屉组件(SlidingDrawer)

发布时间:2025-05-10 22:14

隐藏式抽屉: 对于不常用但需要的物品,可设计隐藏式抽屉存放。 #生活技巧# #收纳整理技巧# #厨房抽屉整理法#

SlidingDrawer是一种抽屉型的组件,当用户选中抽屉之后,会得到一些可以使用的“程序集”,这样当一个界面要摆放多个组件的时候,使用此组件就可以很好的解决布局空间紧张的问题。

在main.xml中

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout

    xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

    <SlidingDrawer

        android:id="@+id/slidingdrawer"

        android:layout_width="fill_parent"

        android:layout_height="fill_parent"

        android:orientation="horizontal"

        android:handle="@+id/handle"

        android:content="@+id/content">

        <ImageView

            android:id="@+id/handle"

            android:src="@drawable/ico_left"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"/>

        <LinearLayout

         xmlns:android="http://schemas.android.com/apk/res/android"

         android:id="@+id/content"

         android:layout_width="fill_parent"

         android:layout_height="fill_parent"

         android:gravity="center_horizontal">

     </LinearLayout>

    </SlidingDrawer>

</LinearLayout>

在MySlidingDrawerDemo.java程序中

package com.li.slidingdrawer;

import android.app.Activity;

import android.os.Bundle;

import android.widget.ArrayAdapter;

import android.widget.ImageView;

import android.widget.LinearLayout;

import android.widget.ListView;

import android.widget.SlidingDrawer;

import android.widget.SlidingDrawer.OnDrawerCloseListener;

import android.widget.SlidingDrawer.OnDrawerOpenListener;

import android.widget.SlidingDrawer.OnDrawerScrollListener;

import android.widget.Toast;

public class MySlidingDrawerDemo extends Activity {

  private String data[] = new String[]{

       "北海银滩","北海冠头岭","北海涠洲岛","北海南珠宫"};

  private ListView listview = null;

  private SlidingDrawer slidingDrawer = null;

  private ImageView handle = null;

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        super.setContentView(R.layout.main);

        LinearLayout layout = (LinearLayout)super

           .findViewById(R.id.content);  //向里面保存ListView

        this.listview = new ListView(this);

        this.listview.setAdapter(new ArrayAdapter<String>(this,

          android.R.layout.simple_expandable_list_item_1,this.data));

        layout.addView(this.listview);

        this.slidingDrawer = (SlidingDrawer)super.findViewById(R.id.slidingdrawer);

        this.handle = (ImageView)super.findViewById(R.id.handle);

        this.slidingDrawer.setOnDrawerOpenListener(new onDrawerOpenListenerImpl());

        this.slidingDrawer.setOnDrawerCloseListener(new OnDrawerCloseListenerImpl());

        this.slidingDrawer.setOnDrawerScrollListener(new OnDrawerScrollListenerImpl());

    }

    private class onDrawerOpenListenerImpl implements OnDrawerOpenListener{

     public void onDrawerOpened() {

       MySlidingDrawerDemo.this.handle.setImageResource(R.drawable.ico_right);

     }

    }

    private class OnDrawerCloseListenerImpl implements OnDrawerCloseListener{

     public void onDrawerClosed() {

       MySlidingDrawerDemo.this.handle.setImageResource(R.drawable.ico_left);

     }

    }

    private class OnDrawerScrollListenerImpl implements OnDrawerScrollListener{

     public void onScrollEnded() {

       Toast.makeText(MySlidingDrawerDemo.this, "窗口拖动结束",Toast.LENGTH_LONG).show();

     }

     public void onScrollStarted() {

       Toast.makeText(MySlidingDrawerDemo.this, "拖动窗口", Toast.LENGTH_LONG).show();

     }

    }

}

网址:android 隐式抽屉组件(SlidingDrawer) https://www.yuejiaxmz.com/news/view/952160

相关内容

Android 组件的抽屉(初级)
android左右抽屉的简单介绍
抽屉组件
告别混乱!Android抽屉排序,轻松掌握高效整理技巧
Android地图抽屉:解锁移动导航的便捷之道,揭秘高效出行新秘籍
抽屉式隐蔽垃圾桶.docx
抽屉组件.pdf
抽屉软件
【组合抽屉式收纳柜】组合抽屉式收纳柜价格
抽屉组件的制作方法

随便看看