DrawerLayout 抽屉布局
文章目录
效果:

布局
- 外层是DrawerLayout,第一个子view是内容区,侧滑内容紧跟其后。
- 侧滑内容可以有好几个
android:layout_gravity="end"标识从左边还是右边滑出
以上就可以简单的实现抽屉布局了。
关联Toolbar
比如上图中的toolbar左边有三道杠,点击即可弹出DrawerLayout
//mDrawerLayout与mToolbar关联起来 ActionBarDrawerToggle actionBarDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, mToolbar, R.string.open, R.string.close); //初始化状态 actionBarDrawerToggle.syncState();
手动打开关闭
手动打开关闭DrawerLayout
- 打开左边
mDrawerLayout.openDrawer(Gravity.START);
- 打开右边
mDrawerLayout.openDrawer(Gravity.END);
- 关闭一边
mDrawerLayout.closeDrawer(Gravity.START);
- 关闭所有
mDrawerLayout.closeDrawers();
Gravity.START指定打开哪一个,关闭同理。
监听
//监听 mDrawerLayout.addDrawerListener(new DrawerLayout.DrawerListener() { @Override public void onDrawerSlide(@NonNull View view, float v) { Log.i("---", "滑动中"); } @Override public void onDrawerOpened(@NonNull View view) { Log.i("---", "打开"); } @Override public void onDrawerClosed(@NonNull View view) { Log.i("---", "关闭"); } @Override public void onDrawerStateChanged(int i) { Log.i("---", "状态改变"); } });
github:https://github.com/yechaoa/MaterialDesign
文档:https://developer.android.google.cn/reference/android/support/v4/widget/DrawerLayout
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/198755.html原文链接:https://javaforall.net
