您的位置:首页 > 移动开发 > Android开发

Android开发_DrawerLayout实现抽屉布局

2015-03-29 23:10 441 查看
布局文件代码
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<!-- The main content view -->

<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</FrameLayout>

<!-- The navigation view -->

<ListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:layout_gravity="start"
android:background="#ffffcc"
android:choiceMode="singleChoice"
android:divider="@android:color/transparent"
android:dividerHeight="0dp" >
</ListView>

</android.support.v4.widget.DrawerLayout>

     其中的FrameLayout为主显示的界面,ListView为菜单页面;当ListView中的属性layout_gravity=“start”时,菜单会在左边显示,当ListView中的属性layout_gravity=“end”时,菜单会在右边显示

监听抽屉打开和关闭的事件

要监听抽屉打开和关闭的事件,需要调用该方法:mDrawerLayout.setDrawerListener(DrawerLayout.DrawerListener);因为ActionBarDrawerToggle这个类实现了DrawerLayout.DrawerListener该接口,所以可以通过创建ActionBarDrawerToggle类来实现事件的监听。

mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout,
R.drawable.ic_drawer, R.string.drawer_open,R.string.drawer_close) {
@Override
public void onDrawerOpened(View drawerView) {
super.onDrawerOpened(drawerView);
}

@Override
public void onDrawerClosed(View drawerView) {
super.onDrawerClosed(drawerView);
}
};
mDrawerLayout.setDrawerListener(mDrawerToggle);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android