<?xml version= "1.0" encoding= "Utf-8"?>
<!--need to set the ID of Slidingdrawer handle and content--
<slidingdrawer xmlns:android= "Http://schemas.android.com/apk/res/android"
Android:id= "@+id/slidingdrawer"
Android:layout_width= "Match_parent"
android:layout_height= "Match_parent"
Android:content= "@+id/content"
Android:handle= "@+id/handle"
android:orientation= "Horizontal" >
<!--set handle to handle sliding drawers--
<imagebutton
Android:id= "@id/handle"
Android:layout_width= "50DP"
android:layout_height= "50DP"
android:src= "@drawable/ic_launcher"/>
<!--set content View--
<relativelayout
Android:id= "@id/content"
Android:layout_width= "Match_parent"
android:layout_height= "Match_parent"
android:background= "#F0F0F0" >
<textview
Android:id= "@+id/show_tv"
Android:layout_width= "Wrap_content"
android:layout_height= "Wrap_content"
Android:gravity= "Center_vertical|center_horizontal"
android:text= "Simple drawer effect"
Android:textcolor= "#333333"
Android:textsize= "18sp"/>
<listview
Android:id= "@+id/lv"
Android:layout_width= "Wrap_content"
android:layout_height= "Wrap_content"
android:layout_below= "@id/show_tv" >
</ListView>
</RelativeLayout>
</SlidingDrawer>
--------------Activity Code-----------
public class Mainactivity extends Activity {
Private Slidingdrawer Msliddrawer;
Private ImageButton mimagebtn;
Private TextView mshowtv;
Private list<string> dataList;
Private ListView mLv;
@Override
protected void OnCreate (Bundle savedinstancestate) {
TODO auto-generated Method Stub
Super.oncreate (savedinstancestate);
Setcontentview (R.layout.activity_main);
Initviews ();
Initdatas ();
Initdrawerlisteners ();
}
@SuppressWarnings ("deprecation")
private void Initdrawerlisteners () {
Msliddrawer.setondraweropenlistener (New Slidingdrawer.ondraweropenlistener () {
public void ondraweropened () {
Mimagebtn.setimageresource (R.DRAWABLE.A1);
}
});
Msliddrawer.setondrawercloselistener (New Slidingdrawer.ondrawercloselistener () {
public void ondrawerclosed () {
Mimagebtn.setimageresource (R.drawable.ic_launcher);
}
});
Msliddrawer.setondrawerscrolllistener (New Slidingdrawer.ondrawerscrolllistener () {
public void onscrollended () {
Mshowtv.settext ("Slide Open");
Mlv.setadapter (New Draweradpater (Getapplicationcontext (), dataList));
}
public void onscrollstarted () {
Mshowtv.settext ("sliding hide");
}
});
Mlv.setonitemclicklistener (New Onitemclicklistener () {
@Override
public void Onitemclick (adapterview<?> parent, view view, int position, long ID) {
Mshowtv.settext (Datalist.get (position));
}
});
}
private void Initdatas () {
DataList = new arraylist<string> ();
for (int i = 0; I <= 6; i++) {
Datalist.add ("drawer Menu" + i + "layer");
}
}
private void Initviews () {
MIMAGEBTN = (ImageButton) Findviewbyid (R.id.handle);
Msliddrawer = (slidingdrawer) Findviewbyid (r.id.slidingdrawer);
MSHOWTV = (TextView) Findviewbyid (R.ID.SHOW_TV);
MLv = (ListView) Findviewbyid (r.id.lv);
}
}
--------------activity in the ListView adapter Draweradpater ---------
public classDrawerAdpater extends Baseadapter {
List<string> list;
Layoutinflater Inflater;
Public Myadpater (context context, list<string> List) {
This.list = list;
This.inflater = Layoutinflater.from (context);
}
public int GetCount () {
return List.size ();
}
public long getitemid (int position) {
return position;
}
Public View GetView (int position, View Convertview, ViewGroup parent) {
if (Convertview = = null) {
Convertview = inflater.inflate (R.layout.item, NULL);
}
TextView TextView = (TextView) Convertview.findviewbyid (R.id.text);
Textview.settext (List.get (position));
return convertview;
}
@Override
Public Object getItem (int position) {
return List.get (position);
}
}
Android Drawer menu Slidingdrawer simple to use