2019独角兽企业重金招聘Python工程师标准>>>

常见实现App 上面侧边栏菜单之前使用SlidingMenu,现在发现Goolgle原生NavigationDrawer也挺好用。但是细心的开发者们发现NavigationDrawer没有类似SlidingMenu全屏平移的效果,其实不用着急,简单修改即可实现此效果。

话不多说上代码:

    //.....省略部分代码private DrawerLayout.SimpleDrawerListener simpleDrawerListener;//侧边栏基础布局DrawerLayoutprivate NavigationView navigationView;//侧边栏控件private View contentView;//主体内容布局//.....省略部分代码@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_navigation_drawer);//.....省略部分代码drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);contentView = findViewById(R.id.content);//.....省略部分代码simpleDrawerListener  = new DrawerLayout.SimpleDrawerListener() {@Overridepublic void onDrawerSlide(View drawerView, float slideOffset) {super.onDrawerSlide(drawerView, slideOffset);System.out.println(navigationView.getWidth()+navigationView.getX());//根据侧边栏控件宽度和其移动像素计算内容布局位移,使内容布局左边紧贴侧边栏控件右边contentView.setX(navigationView.getWidth()+navigationView.getX());}@Overridepublic void onDrawerOpened(View drawerView) {super.onDrawerOpened(drawerView);System.out.println("+++++++++++onDrawerOpened++++++++++++");}@Overridepublic void onDrawerClosed(View drawerView) {super.onDrawerClosed(drawerView);System.out.println("+++++++++onDrawerClosed++++++++++++++");}@Overridepublic void onDrawerStateChanged(int newState) {super.onDrawerStateChanged(newState);System.out.println("+++++++++onDrawerStateChanged++++++++++++++"+newState);}};drawerLayout.addDrawerListener(simpleDrawerListener);//.....省略部分代码}

代码就不发了,本实例在AndroidStudio新建Navigation Drawer Activity自动生成Demo上修改,不太懂需要demo的可以留言。看,实际上Google工程师已经把路铺好,剩下的就是广大的程序员去发挥想象力了。


博主自己作品推荐:
西谷盒子:自带公网IP、即插即用、全端口开放、花生壳替代品
https://cigobox.taobao.com

转载于:https://my.oschina.net/SundyCigoOS/blog/775495

基于Goolgle最新NavigationDrawer实现全屏水平平移相关推荐

  1. 背景图全屏水平垂直居中的方法

    在开发登录页面或者其他全屏背景图的页面,需要背景图全屏并且水平垂直居中,根据浏览器窗口大小自适应.尝试多种方法后,使用了最简单的两行代码搞定. /* 要想实现全屏高度需要单独设置 html 和 bod ...

  2. ace unlock 苹果解锁_【曝光】苹果iPhone最新专利:全屏指纹解锁,保留人脸识别...

    据<福布斯>报道 最近苹果的一项新专利被曝光 未来iPhone将使用屏幕指纹解锁 且同时保留人脸识别 为用户提供式组合解锁方案 苹果的这个专利特别之处在于 它支持全屏识别指纹,任意位置皆可 ...

  3. git菜单形式的_全新的导航形式:全屏菜单

    与其他用户界面细节一样,菜单的设计也在随着当今的潮流改变.一些变化能带来积极的效果,改善用户体验,还有一些却会破坏有利的形象.追随潮流是件棘手的事,尤其是在菜单上. 比如,隐藏式菜单和极简式导航栏最近 ...

  4. 全屏响应式html5+jquery幻灯片轮播特效,纯CSS3超酷全屏响应式幻灯片特效

    这是一款效果非常炫酷的纯CSS3全屏幻灯片特效.该幻灯片特效的效果类似于全屏水平方向的单页滚动效果.该幻灯片效果使用纯CSS3制作,代码仅有100多行,非常的小巧. 制作方法 HTML结构 整个幻灯片 ...

  5. animate inater插件_基于animate.css动画库的全屏滚动小插件,适用于vue.js(移动端、pc)项目...

    功能简介 基于animate.css动画库的全屏滚动,适用于vue.js(移动端.pc)项目. 安装 npm install vue-animate-fullpage --save 使用 main.j ...

  6. 基于ijkplayer的视频播放器,仿Bilibili客户端,集成沉浸式全屏、弹幕、触屏控制、视频源切换等功能

    该视频播放器基于Bilibili的开源项目ijkplayer做的,是在github上的demo基础上搭建了个播放界面,如果你之前有研究过这个demo代码,那你看这个库就非常简单了.至于还不知道ijkp ...

  7. 一加7pro何时发布android10,一加7/7 Pro基于Android 10的氧OS正式版发布:全新UI设计、全屏手势...

    拼 命 加 载 中 ... 在谷歌发布Android 10正式版系统之后,除了亲儿子Pixel系列机型能够在第一时间获得升级之外,大概也就已经停产的Essential Phone在第一时间获得升级了吧 ...

  8. Codrops 优秀教程:基于 CSS3 的全屏网页过渡特效

    向大家分享一个来自 Codrops 的基于 CSS3 实现的全屏网页过渡特效.页面初始布局是四个盒子,点击其中一个会扩张到全屏,其它的会淡出隐藏:关闭当前视图的时候又恢复到初始状态. 您可能感兴趣的相 ...

  9. 基于jQuery商城网站全屏图片切换代码

    基于jQuery商城网站全屏图片切换代码.这是一款商城网站全屏多张图片滑动切换代码.效果图如下: 在线预览    源码下载 实现的代码. html代码: <div class="sli ...

  10. Css学习总结(3)——CSS布局解决方案 - 水平、垂直居中、多列布局、全屏布局

    居中布局 水平居中 子元素于父元素水平居中且其(子元素与父元素)宽度均可变. inline-block + text-align <div class="parent"> ...

最新文章

  1. (C++)1012 数字分类
  2. python中构造方法可以被继承吗_构造函数是在python中继承的吗
  3. 【Android 插件化】插件化技术弊端 ( 恶意插件化程序的解决方向 | 常用的插件化虚拟引擎 )
  4. 鼓浪屿天气预报软件测试,厦门鼓浪屿天气预报15天
  5. 基金小窍门:如何判断基金的赚与赔
  6. 95-24-020-Future-Future简介
  7. Springcloud实战(五)微服务网关gateway整合nacos实战
  8. PCIE协议(原版) 免费分享
  9. GUID(GPT)分区格式安装Win7系统激活工具
  10. 华为鸿蒙用不用清理内存卡,华为这6个设置必须要关,否则天天清理内存也没用,关了再用5年...
  11. 英语名言警句100句
  12. 百度地图api去除logo,以及三维按钮
  13. python获取豆瓣高分电影写入MYSQL+matplotlib简单可视化
  14. PHP 屏幕亮度,window_Win8系统 调节电脑屏幕亮度的四种方法,第一页:Win8系统下调节电脑屏 - phpStudy...
  15. android studio记账,Android Studio——记账本以及图表可视化实现
  16. vb python excel_【Python3+VBA】在Excel中生成小姐姐
  17. 微信公众号开发C#系列-12、微信前端开发利器:WeUI
  18. C/C++语言入门——冒泡排序问题
  19. 51cto的请看过来
  20. 关于软件延时指定us(1T和12T)

热门文章

  1. html中bottom的作用,css bottom属性怎么用
  2. 第六次团队作业——Alpha冲刺之事后诸葛亮
  3. TYPORA主题更换
  4. 阿里腾讯大裁员,中概股暴跌!没病千万别去互联网公司......
  5. 服务器维保价格标准_标准维护服务方案
  6. 北航计算机学院国家奖学金,关于2018年研究生国家奖学金评定工作的通知
  7. JDBC Connection [com.alibaba.druid.proxy.jdbc.ConnectionProxyImpl@xxx] will not be managed by Spring
  8. iOS - UIButton连续点击事件控制
  9. 操作系统--虚拟内存
  10. DEVC++实现街头篮球(爷青回)