DrawerLayout使用详解

DrawerLayout使用详解DrawerLayout 抽屉布局文章目录效果 布局关联 Toolbar 手动打开关闭监听 github https github com yechaoa MaterialDesi 效果 布局

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

(0)
上一篇 2026年3月26日 下午2:33
下一篇 2026年3月26日 下午2:33


相关推荐

  • jstat使用_jvm常用命令

    jstat使用_jvm常用命令如何判断JVM是否存在内存问题呢?判断JVM垃圾回收是否正常?一般的top指令基本上满足不了这样的需求,因为它主要监控的是总体的系统资源,很难定位到java应用程序。Jstat是JDK自带的一个轻量级小工具。全称“JavaVirtualMachinestatisticsmonitoringtool”,它位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能…

    2025年10月31日
    5
  • 详细!PyCharm连接MySQL数据库教程+心得

    详细!PyCharm连接MySQL数据库教程+心得第一步 安装 MySQL 下载地址 https dev mysql com downloads mysql 下载完后 我们将 zip 包解压到相应的目录 这里我将解压后的文件夹放在 C web mysql 8 0 11 下 接下来我们需要配置下 MySQL 的配置文件打开刚刚解压的文件夹 C web mysql 8 0 11 在该文件夹下创建 my ini 配置文件 编辑 my

    2026年3月27日
    2
  • 精选国外免费PHP空间推荐

    精选国外免费PHP空间推荐精选国外免费PHP空间推荐方法/步骤000webhost–1500M支持PHP可绑米免费虚拟主机免费提供1500M空间,100G流量,FTP、Web方式上传管理文件,支持PHP5,提供2个M

    2022年7月2日
    29
  • OpenClaw/Clawbot配置硅基流动AI模型

    OpenClaw/Clawbot配置硅基流动AI模型

    2026年3月15日
    2
  • 塞班时代JAVA_回忆S60(塞班)年代的JAVA游戏:有没有哪一款是你在课堂偷偷玩的…

    塞班时代JAVA_回忆S60(塞班)年代的JAVA游戏:有没有哪一款是你在课堂偷偷玩的…那时候的手机内存很小 要用来玩游戏的话就必须买一个大内存的 MMC 卡 手机也没那么多款式 班上同学几乎用着同样的几款手机 系统还都是 S60 S60 系统的游戏有三大类 分别是 N Gage SIS JAVA 这顺序恰好也是游戏可玩性的排序 都说 JAVA 游戏最为简单 可玩性一般而已 但我觉得内存 1M 以内的 JAVA 游戏是最耐玩的 而且资源很丰富 随便在 WAP 一搜就能找到 今天就想给大家回忆一下最让我印象深刻

    2026年1月22日
    6
  • 企业管理:名片的重要性

    企业管理:名片的重要性一个企业的名片代表了其服务的专业态度 一个企业不怕自己的名片与别人相同 而害怕自己缺乏专业的团队 名片设计欣赏 12 款国外优秀名片设计样本摘要 名片 中国古代称名刺 是标示姓名及其所属组织 公司单位和联系方法的纸片 名片也是新朋友互相认识 自我介绍的最快有效的方法 下面的列表向大家展示 12 款创意的国外名片设计样本 阅读全文超精美 10 款专业的高质量名

    2026年3月16日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号