关闭

一步一步学android控件(之二十七)—— SlidingDrawer

标签: Android控件SlidingDrawerSlidingDrawer样式
1049人阅读 评论(0) 收藏 举报
分类:

对于SlidingDrawer,官网上是这样解释的:SlidingDrawer将内容隐藏在屏幕之外,并且允许用户通过拖动handle将内容显示到屏幕上。一个SlidingDrawer由两个子View组成:一个“handle”和一个“content”。注意:SlidingDrawer在API17中已经弃用。

下面通过一个简单示例来学习该控件,先看看效果图:


看代码:

1、widget_sliding_drawer.xml

<?xml version="1.0" encoding="utf-8"?>
<SlidingDrawer xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/sliding_drawer"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    android:content="@+id/content"
    android:handle="@+id/handle" >

    <ImageView
        android:id="@+id/handle"
        android:layout_width="15dip"
        android:layout_height="50dip"
        android:src="@drawable/seek_bar_style" />

    <LinearLayout
        android:id="@+id/content"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:src="@drawable/seek_bar_thum" />

    </LinearLayout>

</SlidingDrawer>
文中使用到了seek_bar_style和seek_bar_thum,具体定义参见一步一步学android控件(之二十五)—— SeekBar

2、activity——WidgetsSlidingDrawerActivity , 只添加了一句代码——setContentView。

package com.xy.zt.selfdefinewieget;
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;

public class WidgetsSlidingDrawerActivity extends Activity implements OnTouchListener {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.widget_sliding_drawer);
    }

    public boolean onTouch(View v, MotionEvent event) {
        return false;
    }
}

3、在ViewData.java中添加如下内容(此部分内容可选)

public static final int SLISING_DRAWER_ID = QUICK_CONTACT_BADGE_ID + 1;
    public static final String SLIDING_DRAWER_NAME = "SlidingDrawer";
private static final ViewData mSlidingDraer = new ViewData(SLIDING_DRAWER_NAME,
            SLISING_DRAWER_ID);
View_Datas.add(mSlidingDraer);
WidgetsAdapter的handleItemClicked中添加如下内容

case ViewData.SLISING_DRAWER_ID:
                intent.setClass(mContext, WidgetsSlidingDrawerActivity.class);
                mContext.startActivity(intent);
                break;


以上就是SlidingDrawer控件的全部内容,下一个控件ViewFlipper。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:178814次
    • 积分:2617
    • 等级:
    • 排名:第14453名
    • 原创:89篇
    • 转载:7篇
    • 译文:5篇
    • 评论:24条