侧滑菜单的实现方式有许多种,之前有写过一篇SlidingMenu的使用,这次决定记录下DrawerLayout+NavigationView来实现的过程 这里说一下DrawerLayout之前是放在android.support.v4....widget包下的,不过AS3.5以后google整合了这些包到androidx中,于是这次我用的包为androidx.drawerlayout.widget.DrawerLayout。...DrawerLayout下包裹两个控件 第一个是内容控件 第二个是侧滑控件 addDrawerListener用来设置侧滑事件 NavigationView随着版本更新这里也变成了com.google.android.material.navigation.NavigationView...headerLayout设置侧滑布局的头部 menu设置侧滑布局头部下的条目 layout_gravity设置滑出方向,start为从左侧划出,end为右侧 头部监听使用designNavigationView.getHeaderView...(0).setOnClickListener即可 条目监听使用designNavigationView.setNavigationItemSelectedListener即可。
gridlayout 网格布局 implementation'androidx.gridlayout:gridlayout:1.0.0' drawerlayout 抽屉布局 implementation'androidx.drawerlayout...:drawerlayout:1.0.0' NavigationView 侧滑 implementation 'com.google.android.material.navigation.NavigationView...:1.0.0' constraintlayout 约束布局 implementation 'androidx.constraintlayout:constraintlayout:1.1.2' coordinatorlayout...布局 implementation 'androidx.coordinatorlayout:coordinatorlayout:1.0.0' design ui 库 implementation 'com.google.android.material
implementation'androidx.swiperefreshlayout:swiperefreshlayout:1.0.0' viewpager implementation 'androidx.viewpager:viewpager:1.0.0' coordinatorlayout...implementation'androidx.coordinatorlayout:coordinatorlayout:1.0.0' design ui 库 implementation'com.google.android.material...:1.0.0-rc01' constraintlayout 约束布局 implementation'androidx.constraintlayout:constraintlayout:1.1.2' NavigationView...侧滑 implementation'com.google.android.material.navigation.NavigationView:1.0.0' drawerlayout 抽屉布局 implementation'androidx.drawerlayout...:drawerlayout:1.0.0' gridlayout 网格布局 implementation'androidx.gridlayout:gridlayout:1.0.0' viewPager 2
android.support.v4.widget.DrawerLayout替换为androidx.drawerlayout.widget.DrawerLayout android.support.design.widget.NavigationView...替换为com.google.android.material.navigation.NavigationView android.support.design.widget.CoordinatorLayout...替换为 androidx.coordinatorlayout.widget.CoordinatorLayout android.support.design.widget.AppBarLayout替换为...再见,android.support 不推荐使用androidx.test.InstrumentationRegistry AndroidX官方新旧对比 一个神奇的控件——Android CoordinatorLayout...与Behavior使用指南 Android框架之路——NavigationView的使用(结合ToolBar) --------------------- Author: Frytea Title
下面我就总结一下侧滑菜单实现的4种方式: 一、自定义ViewGroup ,处理其onTouch事件 ---- 二、FrameLayout + 手势处理类GestureDetector ---- 三、使用...Google自带的DrawerLayout + NavigationView 这个就很简单了,DrawerLayout 结合NavigationView 很轻易实现这个效果。...{ private DrawerLayout drawer; private Toolbar toolbar; private NavigationView navigationView...> CoordinatorLayout xmlns:android="http://schemas.android.com/apk/...duo-navigation-drawer github地址: duo-navigation-drawer 具体使用参考博客:http://www.jcodecraeer.com/a/opensource
> drawerlayout.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android...> DrawerLayout包裹着include的主页和侧边栏内容NavigationView。...其他需要注意的是,NavigationView的位置应与主内容app_bar_main同级,且在主内容之后。 关于DrawerLayout更多使用可以查看:DrawerLayout使用详解。...> coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/...layout_marginBottom="@dimen/dp_70" app:srcCompat="@android:drawable/ic_dialog_email"/> coordinatorlayout.widget.CoordinatorLayout
NavigationView 通过提供抽屉导航所需要的框架让实现更简单,同时它还能够直接通过菜单资源文件来直接生成导航元素。 ?...把NavigationView 作为DrawerLayout的内容视图来使用,比如下面的布局: DrawerLayout xmlns...headerLayout="@layout/drawer_header" app:menu="@menu/drawer"/> android.support.v4.widget.DrawerLayout...NavigationView处理好了和状态栏的关系,可以确保NavigationView在API21(5.0)设备上正确的和状态栏交互。..., 手势, 以及滚动 CoordinatorLayout与悬浮操作按钮 CoordinatorLayout与app bar 可伸缩折叠的Toolbar (Collapsing Toolbar) CoordinatorLayout
学习内容 通过本实例可以学习到以下内容: Drawerlayout和NavigationView实现优雅的Google范儿侧边栏; 新控件CoordinatorLayout、AppBarLayout、Toolbar...-- 用来放Drawerlayout中的内容, 这里使用NavigationView来实现类似Google pLay中的侧滑栏效果, 必须在build.gradle中添加compile...-- 注意: 如果使用NavigationView(其他控件也是一样)的特有属性,需要加上命名空间: xmlns:app="http://schemas.android.com...需要注意的是,后面两种模式基本只有在CollapsingToolbarLayout才有用, 而前面两种模式基本是需要一起使用的,也就是说,这些flag的使用场景,基本已经固定了。...你会发现多了一个 app:layout_behavior 属性,没错, 如果你使用CoordinatorLayout来实现Toolbar滚动渐变消失动画效果,那就必须在它下面的那个控件中加入这个属性
,CoordinatorLayout,AppBarLayout,Toolbar,TabLayout,SwipeRefreshLayout,Recyclerview等。...先上效果图: 主界面上drawlayou 和NavigationView形成抽屉效果,布局文件如下: DrawerLayout xmlns...> DrawerLayout> java代码:抽屉部分 drawerLayout = (DrawerLayout)findViewById(R.id.id_drawerlayout...); //给NavigationView填充顶部区域,也可在xml中使用app:headerLayout="@layout/header_nav"来设置 navigationView.inflateHeaderView...填充Menu菜单,也可在xml中使用app:menu="@menu/menu_nav"来设置 navigationView.inflateMenu(R.menu.menu_nav); 可以给
Design是为了帮助开发者的,而不是谷歌闲着没事弄个东西刁难我们 所有的代码都我都亲自测试过,文章的语言也尽量用我的话来叙述,大量的动图和图片也是我一个一个截的 属性介绍以xml里为主,代码中动态设置使用...Android材料设计之CollapsingToolbarLayout+Palette Android材料设计之DrawerLayout+NavigationView+TextInputLayout...额外依赖:implementation 'com.android.support:design:27.1.1' 8-2.CoordinatorLayout资料卡片: 国籍:View 城市:ViewGroup...DrawerLayout.gif ---- 11.NavigationView资料卡片: 国籍:View 城市:ViewGroup(FrameLayout) 爱好:装东西 一句话:我就是我,不一样的自我...NavigationView.png ---- 12.TextInputLayout资料卡片: 国籍:View 城市:ViewGroup(LinearLayout) 爱好:装东西 一句话:输入框的最佳神辅助
后端数据在移动端的展现 本篇总结的技术点: 材料设计串烧、Retrofit+RxJava访问请求、MVP模式的思考、App的打包 将App上传到服务器,提供下载地址、 ---- 一、材料设计的综合使用...: 1.布局概览 最外层是一个DrawerLayout并和Toolbar相关联 DrawerLayout主要分为左和中间两块,核心的是中间,左边顺带用一下NavigationView 中间主页面由...布局概览.png ---- 2.效果图一览 总体来说和网页端风格保持一致 Android版 网页版手机端 .png ---- 3.布局与材料设计的控件使用 布局就不贴了,挺多的,也没什么技术含量...,有兴趣的看源码吧 有关材料设计,我写过一个系列:详见--Android材料设计Material Design 开篇前言 3.1:BottomNavigationBar的使用: 为了方便起见,我写了一个...0xff0829FB,//蓝 0xffB709F4//紫 ); mIdSrl.setOnRefreshListener(() -> { //TODO刷新逻辑 }); ---- 3.3:DrawerLayout
Android MVVM框架搭建(六)腾讯X5WebView + DrawerLayout + NavigationView 前言 正文 一、添加依赖 二、使用WebView 三、获取新闻详情 ①...要使用这个WebView需要添加依赖。...schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"> drawerlayout.widget.DrawerLayout...="#000" app:itemTextColor="#000" app:menu="@menu/nav_menu" /> androidx.drawerlayout.widget.DrawerLayout...> layout> 这里主要就是通过NavigationView去加载刚才的两个布局xml,一个作为头部一个作为菜单。
> DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android...) findViewById(R.id.drawer_layout); NavigationView navView = (NavigationView) findViewById(R.id.nav_view...另外,为了让界面上的数据多一些,这里使用了一个循环,随机挑选50个水果。 之后是RecyclerView的逻辑,这里使用GridLayoutManager布局方式。...不过这里使用的是DesignSupport库的CoordinatorLayout而不是FrameLayout,自然会有更加巧妙的解决办法。...当AppBarLayout接收到滚动事件的时候,它内部的子控件是可以指定如何去影响这些事件的, 通过app:layout_scrollFlags属性就能实现。
,请参考《 一篇博客理解Recyclerview的使用》 DrawerLayout+NavigationView 使用DrawerLayout实现侧滑: 定义一个布局: DrawerLayout的实现其实是通过ViewDragHelper来实现的,DrawerLayout构造函数的相关代码如下: public DrawerLayout(Context context,...+NavigationView实现侧滑 DrawerLayout xmlns:android="http://schemas.android.com...最后在布局文件中使用CoordinatorLayout布局,并且给FloatingActionButton添加自定义的Behavior: CoordinatorLayout...详细使用请参考 《CoordinatorLayout使用全解析》 MaterialDesign动画 1.Touch Feedback(触摸反馈) 5.0+的手机是自带的。
UI层的开发 Layout 与 Widget Material Design 和 Android Support Library AppbarLayout + TabLayout DrawerLayout...我们将会在后续的文章来详细再介绍这些Layout 和 Widgets的使用,今天我们的主角不是他们。...我们主要看一下C#如何在ViewPager里面放视图同时与TabLayout关联起来。...DrawerLayout + NavigationView 图3中的左侧菜单,主流APP必备,也是只要几行代码就可以了。 ? 在NavigationView的使用上,有两个属性需要注意一下。...如果Activity代表了一整个View,那我们来看看在不同的View之间如何传递数据。
setOnNavigationItemSelectedListener {} 3、DrawerLayout、NavigationView 和BottomNavigationView相对的,不得不介绍一下...NavigationView,这两者都是导航View,后者一般需要配合DrawerLayout实现侧滑菜单效果。...headerLayout: 设置其头布局 menu: 设置菜单布局 详细使用请看我之前写的一篇博客:高大上的DrawerLayout 4、Toolbar 整体的架构搭建好了,剩下就是开始每个模块的内容了...CoordinatorLayout是整个Design库中最核心的控件。...前提是滑动view必须实现NestedScrollingChild的接口,且需要配置behavior,最基本的使用就是: CoordinatorLayout
整体采用material design 风格,本人是网易云音乐的粉丝,所以界面模仿了网页云音乐,另外,项目中尽量使用了5.0之后的新控件。...项目整体采用mvp+rxjava+retrofit 框架,使用glide进行图片展示,用butterknif注解,另外使用了java 8 新特性,拉姆达表达式,安卓原生并不支持,需要导插件,具体见项目。...后续会采用本地数据库对数据进行缓存,初步定为使用realm。...主界面: 主界面采用material design 设计风格,使用了NavigationView和DrawerLayout的抽屉效果,CoordinatorLayout和viewpager 配合,使用behavior...项目中使用了webview 进行展示 感谢 感谢豆瓣开放测试api。 感谢开源项目 gank.io 同时项目也借鉴了其他的开源项目,感谢。 同时希望可以帮助到其他人。
CoordinatorLayout 又名协调者布局,它是support.design包中的控件,所以使用的时候要导入compile 'com.android.support:design:23.3.0’...注意:CoordinatorLayout是一个顶级父View。...在NestedScrollView的名字中其实就可以看出他的作用了,Nested是嵌套的意思,而ToolBar基本需要嵌套使用。...CoordinatorLayout各种特效 接下来是介绍CoordinatorLayout常用的一些效果 CoordinatorLayout实现浮动操作按钮效果 效果如下: 只要使用CoordinatorLayout...可以使用的其他flag有: enterAlways: 一旦向上滚动这个view就可见。
方法设置一个下拉刷新的监听器, 传入一个SwipeRefreshLayout.OnRefreshListener()并重写onRefresh()来处理具体的刷新逻辑; 3.4 刷新逻辑使用中可以使用如下多线程结构...> DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android...> NavigationView android:id="@+id/nav_view" android...@menu/nav_menu" app:headerLayout="@layout/nav_header"> NavigationView...> DrawerLayout> 这里在RecyclerView的外面再嵌套一层SwipeRefreshLayout,让RecyclerView实现下拉刷新功能
为Layout resourcefile; 2.3 使用NavigationView 添加android.support.design.widget.NavigationView...在开始使用NavigationView之前,我们还需要提前准备好两个东西:menu和headerLayout。...另外两个TextView分别用于显示用户名和邮箱地址,它们都用到了一些RelativeLayout的定位属性; 3/4.使用NavigationView 现在menu和headerLayout都准备好了...,我们终于可以使用NavigationView了。...这样的滑动菜单页面,你无论如何也不能说它丑了吧?
领取专属 10元无门槛券
手把手带您无忧上云