欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Android抽屉菜单SlidingDrawer 简单使用,,<?xmlversion

来源: javaer 分享于  点击 5565 次 点评:104

Android抽屉菜单SlidingDrawer 简单使用,,

<?xmlversion="1.0"encoding="utf-8"?><!--需要设置SlidingDrawer的handle和content的id--><SlidingDrawerxmlns: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">

<!--设置handle,来处理滑动抽屉-->

<ImageButton android:id="@id/handle" android:layout_width="50dp" android:layout_height="50dp" android:src="@drawable/ic_launcher"/> <!--设置内容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="简单抽屉效果"  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代码 -----------

public class MainActivity extends Activity {private SlidingDrawer mSlidDrawer;private ImageButton mImageBtn;private TextView mShowTv;private List<String> dataList;private ListView mLv;@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.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("滑动打开");mLv.setAdapter(new DrawerAdpater(getApplicationContext(), dataList));}public void onScrollStarted() {mShowTv.setText("滑动隐藏");}});

           mLv.setOnItemClickListener(new OnItemClickListener() {@Overridepublic 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("抽屉菜单第" + i + "层");}}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中ListView的适配器DrawerAdpater --------- publicclassDrawerAdpaterextendsBaseAdapter{List<String>list;LayoutInflaterinflater;publicMyAdpater(Contextcontext,List<String>list){this.list=list;this.inflater=LayoutInflater.from(context);}

publicintgetCount(){returnlist.size();}

publiclonggetItemId(intposition){returnposition;}

publicViewgetView(intposition,ViewconvertView,ViewGroupparent){if(convertView==null){convertView=inflater.inflate(R.layout.item,null);}TextViewtextView=(TextView)convertView.findViewById(R.id.text);textView.setText(list.get(position));returnconvertView;}

@OverridepublicObjectgetItem(intposition){returnlist.get(position);}}

相关栏目:

用户点评