DrawerLayout结合Tollbar实现菜单侧滑效果

DrawerLayout结合Tollbar实现菜单侧滑效果,第1张

概述本文实例为大家分享了DrawerLayout结合Tollbar实现菜单侧滑的具体代码,供大家参考,具体内容如下

本文实例为大家分享了DrawerLayout结合Tollbar实现菜单侧滑的具体代码,供大家参考,具体内容如下

DrawerLayout(抽屉布局):谷歌官方的控件,可以简单的实现侧滑菜单;
此Demo主要是DrawerLayout结合Toolbar实现侧滑左上角返回键实现动画效果,点击左上角返回键实现动画效果并且滑出滑入侧滑菜单;
xml布局文件:

<linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"  xmlns:tools="http://schemas.androID.com/tools"  androID:layout_wIDth="match_parent"  androID:layout_height="match_parent"  xmlns:app="http://schemas.androID.com/apk/res-auto"  tools:context="www.dld.com.drawerlayoutdemo.MainActivity"  androID:orIEntation="vertical">   <!--app:theme="@style/DrawerArrowStyle"设置旋转样式(当DrawerLayout滑出返回键有一个动画)-->  <androID.support.v7.Widget.Toolbar   androID:layout_wIDth="match_parent"   androID:layout_height="wrap_content"   androID:ID="@+ID/toolbar"   androID:background="@androID:color/holo_blue_dark"   app:theme="@style/DrawerArrowStyle"/>   <androID.support.v4.Widget.DrawerLayout   androID:ID="@+ID/drawerLayout"   androID:layout_wIDth="match_parent"   androID:layout_height="match_parent">   <!--主布局-->   <linearLayout    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent"    androID:background="#e5e5e5">    <TextVIEw     androID:gravity="center"     androID:layout_wIDth="match_parent"     androID:layout_height="match_parent"     androID:text="主页面"     androID:textSize="35sp"/>   </linearLayout>   <!--   侧滑菜单   androID:layout_gravity="start"从左边滑出   androID:layout_gravity="end"从右边滑出   -->   <linearLayout    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent"    androID:background="#e5e5e5"    androID:layout_gravity="start"    >    <TextVIEw     androID:layout_wIDth="match_parent"     androID:layout_height="match_parent"     androID:text="侧滑菜单"     androID:gravity="center"     androID:textSize="35sp"/>   </linearLayout>  </androID.support.v4.Widget.DrawerLayout>  </linearLayout> 

布局文件非常简单,就是一个线性布局,上面是toolbar,下面是DrawerLayout,抽屉布局里面放两个容器布局,上面的是主页面,下面的是菜单页面;

想要实现左上角返回按钮的动画必须给toolbar设置样式(app:theme="@style/DrawerArrowStyle"):

<!-- 左边的侧滑箭头指示 是否翻转,颜色--> <style name="DrawerArrowStyle" parent="Widget.AppCompat.DrawerArrowToggle">  <item name="spinbars">true</item>  <item name="color">@androID:color/white</item> </style> 

接下来设置Toolbar和DrawerLayout:

toolbar = (Toolbar) findVIEwByID(R.ID.toolbar); mDrawerLayout= (DrawerLayout) findVIEwByID(R.ID.drawerLayout); /***************************************Toolbar设置****************************************/ //把布局中的Toolbar当作Actionbar setSupportActionbar(toolbar); //设置标题 getSupportActionbar().setTitle("颐众商城"); //设置返回键 getSupportActionbar().setdisplayHomeAsUpEnabled(true);  /**********************************DrawerLayout设置****************************************/ //第一步:创建返回键,并实现打开关/闭监听 ActionbarDrawerToggle mDrawerToggle = new ActionbarDrawerToggle(this,mDrawerLayout,toolbar,0) {  @OverrIDe  //打开Drawer  public voID onDrawerOpened(VIEw drawerVIEw) {   super.onDrawerOpened(drawerVIEw);//开关状态改为opened  }   @OverrIDe  //关闭Drawer  public voID onDrawerClosed(VIEw drawerVIEw) {   super.onDrawerClosed(drawerVIEw);//开关状态改为closed  } };  //第二步:该方法会自动和actionbar关联,将开关的图片显示在了action上,如果不设置,也可以有抽屉的效果,不过是默认的图标 mDrawerToggle.syncState(); //第三步:设置抽屉滑出来,和滑进去的监听 mDrawerLayout.setDrawerListener(mDrawerToggle); 

点击打开链接免费下载源码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

总结

以上是内存溢出为你收集整理的DrawerLayout结合Tollbar实现菜单侧滑效果全部内容,希望文章能够帮你解决DrawerLayout结合Tollbar实现菜单侧滑效果所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1143492.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存