首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

DrawerLayout+NavigationView

侧滑菜单的实现方式有许多种,之前有写过一篇SlidingMenu的使用,这次决定记录下DrawerLayout+NavigationView来实现的过程 这里说一下DrawerLayout之前是放在android.support.v4....widget包下的,不过AS3.5以后google整合了这些包到androidx中,于是这次我用的包为androidx.drawerlayout.widget.DrawerLayout。...headerLayout设置侧滑布局的头部 menu设置侧滑布局头部下的条目 layout_gravity设置滑出方向,start为从左侧划出,end为右侧 头部监听使用designNavigationView.getHeaderView...(0).setOnClickListener即可 条目监听使用designNavigationView.setNavigationItemSelectedListener即可。...> <androidx.drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android

1K10

Android使用DrawerLayout实现双向侧滑菜单

前言   在android开发中,很多的app都有使用侧滑菜单,有的是自定义控件来实现侧滑菜单,但是android给我们提供了DrawerLayout类来实现侧滑菜单,侧滑效果很好,今天我就说说怎么去使用它来实现侧滑菜单...-- 主布局,位于DrawerLayout的第一次子控件,位置不可以放错 -- <FrameLayout android:layout_width="fill_parent" android:...然后在MainActivity里面,我们得到DrawerLayout 对象,和两个菜单对象,对按钮添加点击方法。...这就需要知道DrawerLayout的几个常用方法了。...用这三个方法基本就可以实现上面的效果了,好了,简单的双向侧滑菜单就完成了,不需要使用自定义的控件,自定义的控件可能有更加丰富的动画效果,这就需要大家自己去是实现了。 源码下载点这里。

1.1K10

Android使用DrawerLayout实现侧滑菜单效果

一、概述 DrawerLayout是一个可以方便的实现Android侧滑菜单的组件,我最近开发的项目中也有一个侧滑菜单的功能,于是DrawerLayout就派上用场了。...如果你从未使用DrawerLayout,那么本篇博客将使用一个简单的案例带你迅速掌握DrawerLayout的用法。 二、效果图 ? 三、代码实现 主布局activity_main.xml <?...当你使用DrawerLayout的时候,DrawerLayout的第一个元素就是主要内容区域(在本案例中是ListView),它的宽高必须是match_parent。...(Gravity.RIGHT)) { drawerLayout.closeDrawer(Gravity.RIGHT); } else { drawerLayout.openDrawer(Gravity.RIGHT...(Gravity.RIGHT); 至此DrawerLayout的基本使用就已经掌握了,更深入的了解DrawerLayout,请参考Google官方文档Creating a Navigation Drawer

95540

浅谈DrawerLayout(抽屉效果)

DrawerLayout是V4包下提供的一种左滑右滑抽屉布局效果。 实现效果如下: 因为是官方提供的,所以使用起来也相对的比较简单。...DrawerLayout 提供 1、当界面弹出的时候,主要内容区会自动背景变黑,当点击内容区的时候,抽屉布局会消失 2、在屏幕边缘手势滑动 会拉出抽屉布局 注意:当按后退键的时候,如果抽屉布局正在显示...) findViewById(R.id.drawer_layout); mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED...的监听事件: mDrawerLayout.setDrawerListener(new DrawerLayout.DrawerListener() { /**...; } }); 可能出现的问题: DrawerLayout界面点击事件穿透问题,即点击Drawerlayout上面的区域,会发现该位置DrawerLayout覆盖掉的区域的控件可以被点击

1.4K50

ugui drawcall优化_DrawerLayout

因为我们使用RawImage的时候都是拿来显示一些单张的纹理,比如好友列表里的头像,如果这些头像都是玩家自定义上传的头像,往往互不相同,当渲染到RawImage的时候,就会导致头像的材质球使用的纹理不同而导致不能合批而各占一个...但如果是使用的系统头像,那么就可以让两个使用了相同系统头像的RawImage合批。...我们这个案例,I2和R2使用的材质球(Default UI Material) 和 纹理(Unity White)都是一样的,所以能够合批。...UGUI会对所有的UI控件(CanvasRenderer)按depth、材质球ID、纹理ID做一个排序,那么这些字段的排序优先级也是有规定的: 给出一个案列来帮助理解: UI控件名称 使用的材质球...使用的纹理 I1 M_InstID_Bigger texture_InstID_Smaller I2 M_InstID_Smaller texture_InstID_Smaller R1 M_InstID_Bigger

92010

DrawerLayout详解「建议收藏」

drawerLayout是Support Library包中实现了侧滑菜单效果的控件,可以说drawerLayout是因为第三方控件如MenuDrawer等的出现之后,google借鉴而出现的产物。...drawerLayout分为侧边菜单和主内容区两部分,侧边菜单可以根据手势展开与隐藏(drawerLayout自身特性),主内容区的内容可以随着菜单的点击而变化(这需要使用者自己实现)。...drawerLayout使用很方便,使用drawerLayout的要点如下: 1.drawerLayout其实是一个布局控件,跟LinearLayout等控件是一种东西,但是drawerLayout...但是drawerLayout提供了更优雅的方式:使用ActionBarDrawerToggle的onOptionsItemSelected方法。...我们看到很多使用drawerLayout的代码中都同时使用了Fragment,这会造成误解,以为使用drawerLayout必须用到Fragment,其实这是错误的,使用Fragment是因为在侧滑菜单被点击的时候

2K10

Android原生侧滑控件DrawerLayout使用方法详解

在android的v4包中有一个控件 Drawerlayout,主要实现了左拉和右拉菜单,类似于之前的“抽屉”功能,此控件使用简单,效果很柔和,操作起来体验非常好,下面是我实现的一个简单效果的部分截图:...很显然,drawerlayout布局类似一个大容器,超屏布局,将left的布局放在了控件的开始地方,right的布局放在了控件结尾的地方。...= (DrawerLayout) findViewById(R.id.main_drawer_layout); //设置菜单内容之外其他区域的背景色 drawerLayout.setScrimColor...(main_left_drawer_layout)) { drawerLayout.closeDrawer(main_left_drawer_layout); } else { drawerLayout.openDrawer...(main_right_drawer_layout)) { drawerLayout.closeDrawer(main_right_drawer_layout); } else { drawerLayout.openDrawer

4.5K00

android侧滑菜单控件DrawerLayout使用方法详解

drawerLayout是Support Library包中实现了侧滑菜单效果的控件,可以说drawerLayout是因为第三方控件如MenuDrawer等的出现之后,google借鉴而出现的产物。...drawerLayout分为侧边菜单和主内容区两部分,侧边菜单可以根据手势展开与隐藏(drawerLayout自身特性),主内容区的内容可以随着菜单的点击而变化(这需要使用者自己实现)。...使用步骤: 创建一个DrawerLayout 为了添加导航抽屉,你需要在你的布局界面中声明一个DrawerLayout对象作为布局的根节点。...同时在DrawerLayout内部添加两个view: 添加一个View,它包含应用的主内容(当抽屉隐藏时你的主要布局); 添加另一个View它包含了导航抽屉; 如下面例子所示:该布局使用DrawerLayout...mDrawerList.setItemChecked(position, true); mDrawerLayout.closeDrawer(mDrawerList); } 打开和关闭抽屉 使用

2.2K10

Android使用DrawerLayout仿QQ6.6版侧滑效果

一讲到侧滑菜单,我相信大家都会想到一个开源控件SlidingMenu,在google还没有出来DrawerLayout的时候几乎都是使用Slidingmenu来实现侧滑效果,可以说是效果很不错,自从google...出了Drawerlayout以后很多公司就使用Drawerlayout比如 滴滴打车等等。...那么今天我们利用drawerlayout来实现qq6.6最新的侧滑效果。首先来看看Drawerlayout默认的效果: ?...这样大家可以看到区别了,其实我们只要在滑动左面菜单的时候让内容页面跟随滑动就行了,首先我们看看DrawerLayout有没有给我们监听滑动的监听,哈哈,翻了一下源码我们找到了这个方法 onDrawerSize...方法;只要实现setDrawerListener回调就行了代码如下: drawer.setDrawerListener(new DrawerLayout.DrawerListener() {

80720

DrawerLayout实现网易新闻抽屉效果

,Drawerlayout布局本身就提供了左划和右划的功能 先上代码,然后慢慢解答,看完这篇博客你就知道Drawerlayout怎么用了 首先上逐步局文件代码 Drawerlayout是Androidv4包里自带的,既然是自带的那么直接拿来用就可以了,当然前提是你得工程里有v4包 下面解释上面的布局文件,让你懂得Drawerlayout用法,首先Drawerlayout...= (DrawerLayout) findViewById(R.id.drawerlayout); leftLayout=(RelativeLayout) findViewById(R.id.left...首先看Drawerlayout,他继承自ViewGroup,这里主要看一下它里面的方法,方便以后使用 /** * Listener for monitoring events about drawers...drawerView);onDrawerStateChanged(int newState); onDrawerSlide(View drawerView, float slideOffset)抽屉改变时使用

1.4K50

Android使用DrawerLayout仿QQ6.0双侧滑菜单

本文实例为大家分享了Android使用DrawerLayout仿QQ6.0双侧滑菜单的具体代码,供大家参考,具体内容如下 ? 上面是效果图。...相关实现的源码和文章网上已经很多了,比较流行的做法分别是使用 FrameLayout, HorizontalScrollView或者是DrawerLayout 其实要实现QQ 6.X版本侧滑效果最好的方案是使用...HorizontalScrollView,因为左侧菜单的透视效果在DrawerLayout下无法实现,或者说实现起来很麻烦,所以在这里我们还是先介绍使用DrawerLayout来制作效果,毕竟是官方给的控件...3.addDrawerListener,首先setDrawerListener() API已经过时了,所以要改为addDrawerListener,可以使用addDrawerListener监听菜单的打开与关闭等等...源码下载:使用DrawerLayout仿QQ6.0双侧滑菜单 以上就是本文的全部内容,希望对大家的学习有所帮助。

56131

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

本文实例为大家分享了DrawerLayout结合Tollbar实现菜单侧滑的具体代码,供大家参考,具体内容如下 ?...DrawerLayout(抽屉布局):谷歌官方的控件,可以简单的实现侧滑菜单; 此Demo主要是DrawerLayout结合Toolbar实现侧滑左上角返回键实现动画效果,点击左上角返回键实现动画效果并且滑出滑入侧滑菜单...--app:theme="@style/DrawerArrowStyle"设置旋转样式(当DrawerLayout滑出返回键有一个动画)-- <android.support.v7.widget.Toolbar...android:id="@+id/<em>drawerLayout</em>" android:layout_width="match_parent" android:layout_height="match_parent...: toolbar = (Toolbar) findViewById(R.id.toolbar); mDrawerLayout= (<em>DrawerLayout</em>) findViewById(R.id.<em>drawerLayout</em>

1.3K10
领券