android之SlidingDrawer 抽屉效果

先看这张效果图吧
[img]http://dl.iteye.com/upload/attachment/0068/2327/2a9629e4-fad3-3f31-9661-7f9a0063af3e.gif[/img]

[color=red]转载时请注明来自[url]http://fuchangle.iteye.com/admin/blogs/1533167[/url][/color]

先贴出main.xml的代码,代码中需要的图片自己解决 :D

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<SlidingDrawer
android:id="@+id/slidingDrawer"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:handle="@+id/handle"
android:content="@+id/content">
<ImageButton
android:id="@+id/handle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/button_up"/>
<LinearLayout
android:id="@+id/content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#ffffff">

<TextView android:text="ceshi"
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
</SlidingDrawer>
</LinearLayout>



然后是java代码

package com.dapp;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageButton;
import android.widget.SlidingDrawer;
import android.widget.TextView;

public class ChoutiActivity extends Activity {
private SlidingDrawer mdrawer;
private ImageButton mButton;
private TextView mText;
private boolean flag;
private HashMap<String, Object> map;

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

mdrawer = (SlidingDrawer)findViewById(R.id.slidingDrawer);
mButton = (ImageButton)findViewById(R.id.handle);
mText = (TextView)findViewById(R.id.textView);
drawerlistener();
getdata();
}

private void getdata(){
List<HashMap<String, Object>> listdata = new ArrayList<HashMap<String, Object>>();

for(int i=0; i<10; i++){
map = new HashMap<String, Object>();
map.put("text", "ceshi");
listdata.add(map);
}
}

private void drawerlistener(){
mdrawer.setOnDrawerOpenListener(new SlidingDrawer.OnDrawerOpenListener() {

@Override
public void onDrawerOpened() {
flag = true;
mButton.setImageResource(R.drawable.button_down);
}
});

mdrawer.setOnDrawerCloseListener(new SlidingDrawer.OnDrawerCloseListener() {

@Override
public void onDrawerClosed() {
flag = false;
mButton.setImageResource(R.drawable.button_up);
}
});

mdrawer.setOnDrawerScrollListener(new SlidingDrawer.OnDrawerScrollListener() {

@Override
public void onScrollStarted() {
mText.setText("结束拖动");
}

@Override
public void onScrollEnded() {
mText.setText("开始拖动");
}
});
}

}

class DataAdapter extends BaseAdapter{
private Context context;
private List<HashMap<String, Object>> data;

public DataAdapter(Context context, List<HashMap<String, Object>> data) {
super();
this.context = context;
this.data = data;
}

@Override
public int getCount() {
// TODO Auto-generated method stub
return data.size();
}

@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}

@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
return null;
}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值