先看对比一下我们写的效果和别人的效果:

activity的xml布局:

1.根部局是DrawerLayout布局,必须设置openDrawer属性:

tools:openDrawer="start"

这个属性决定你的菜单是左边滑出还是右边

2.侧滑菜单是NavigationView布局

app:headerLayout="@layout/nav_header_main" 侧滑菜单的头部

app:menu="@menu/bottom_nav_menu" 侧滑菜单项

nav_header_main.xml:

bottom_nav_menu:

setting

准备完上面的部分我们的侧滑菜单基本完成了,运行得到如下效果:

仔细观察你会发现,我们弹出侧滑菜单的时候,右边的内容是不动的,看起来是侧滑菜单覆盖住了而已。仔细对比文章开始的效果图,你会发现右侧的内容会跟着侧滑菜单向右移动。实现这种效果也不难,在java代码中设置监听就可以实现:

//drawer滑动回调的方法

drawer.setDrawerListener(new DrawerLayout.DrawerListener() {

@Override

public void onDrawerSlide(View drawerView, float slideOffset) {

//获取屏幕的宽高

WindowManager manager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);

Display display = manager.getDefaultDisplay();

//设置右面的布局位置 根据左面菜单的right作为右面布局的left 左面的right+屏幕的宽度(或者right的宽度这里是相等的)为右面布局的right

right.layout(left.getRight(), 0, left.getRight() + display.getWidth(), display.getHeight());

}

@Override

public void onDrawerOpened(View drawerView) {

}

@Override

public void onDrawerClosed(View drawerView) {

}

@Override

public void onDrawerStateChanged(int newState) {

}

});

github:https://github.com/David-lvfujiang/TodayHeadlinesApplication.git

android模仿快手作品界面,android开发:使用DrawerLayout仿快手侧滑菜单栏相关推荐

  1. Android 模仿QQ登录界面解决软键盘遮挡问题

    Android 软件盘弹出可能会遮挡住界面上的某些控件.当 windowSoftInputMode 为 adjustPan 时,一般不会挡住 EditText,但是假如 EditText 下面是一个登 ...

  2. Android模仿京东登录注册,Android:布局实例之模仿京东登录界面

    1 <?xml version="1.0" encoding="utf-8"?> 2 3 android:layout_width="ma ...

  3. android里qq登录界面,Android仿QQ登陆窗口实现原理

    今天根据腾讯qq,我们做一个练习,来学习如何制作一个漂亮的布局.首先看一下官方图片 还是一个启动画面,之后进入登录页面,导航页面就不介绍了,大家可以参考微信的导航页面.首先程序进入SplashActi ...

  4. android 模仿微信布局,【Android初学者】框架布局:仿微信页面制作

    学习Android有一段时间了,跟大家分享一下经验吧! 如果有错误的地方,有更好的方法,麻烦大家留言指导! 工具:studio2.2,虚拟机版本:4.3,API 18(感觉比5.1的稳定啊!) 例子是 ...

  5. android记账本登录界面,Android记账本开发(一):整体UI界面布局

    今天开始进行记账本的开发. 主要想法表述: 1.与用户界面交互的主要有三个界面,总资金管理,收入界面管理,支出管理. 2.实现登录注册功能,在数据库中不同用户有着不同的数据记录. 其他细节在具体开发中 ...

  6. android模仿qq登录界面,初识Android二之小试牛刀模仿实现qq登陆界面

    初识Android二之小试牛刀模仿实现qq登陆界面.俗话说得好,老师踢开门,修行在自己.勉勉强强学完生命周期,然后悠悠闲闲听了两节课后,老师就布置了一个登陆界面的实现,于是,磕磕绊绊的修行之路开始了. ...

  7. android 程序必须有界面,Android开发之开机启动没有界面的应用程序

    在Android系统中,有界面的app一定是有Activity的,没有界面的app,那就是一个Service了. Service如何启动呢?办法和Activity的启动一样,也是Intent对象.我讲 ...

  8. Android模仿微信UI界面

    初学安卓制作的 下载链接

  9. android 网易新闻 登录界面,Android实现网易新闻客户端首页效果

    关于实现网易新闻客户端的界面,以前写过很多博客,请参考: 今天用ViewPager + FragmentAdapter + ViewPagerIndicator来实现. ViewPagerIndica ...

最新文章

  1. Cisco交换机解决网络蠕虫病毒***问题
  2. Java并发编程中级篇(一):使用Semaphore信号量进行并发控制
  3. 乐观锁与悲观锁以及乐观锁的一种实现方式-CAS
  4. 秒杀系统设计架构与实现
  5. LiveVideoStackCon上海2019音视频技术大会 7折早鸟票最后3天
  6. Mongodb带验证的主从复制架构
  7. 刹车时到底要不要踩离合器?
  8. 网络协议:传输层(http://java-mzd.iteye.com/blog/1007577)
  9. 190327每日一句
  10. CenterPoint的环境配置error大全【已全部解决】
  11. 三星s8刷机包android10版本,三星S8+刷机包(官方固件最新升级包v7.0)
  12. 系统设计.如何设计一个秒杀系统(完整版)
  13. 删除脚注分割线(word左下角的横线)
  14. win11虚拟桌面如何使用 Windows11虚拟桌面的使用方法
  15. 星际蜗牛8盘位装机记录 蜗牛C双全 益衡7030电源
  16. Excel VBA 实现Ribbon自定义功能区
  17. 亚马逊云科技:云厂商做自研芯片的两个「选择」
  18. 天津社保EMC存储容灾项目---2629万
  19. Sony微单相机alpha6000 wifi远程控制(1)
  20. 计算机丢失slimage.dll,slimage.dll

热门文章

  1. 面向数据架构的云演变
  2. 查归档日志文件每小时生成量
  3. 【Excel】数据分析工具库
  4. 使用dockerhub的jupyterhub搭建jupyterhub服务器
  5. Linux网易云无法输入中文,Manjaro解决网易云音乐无法在搜索框输入中文的问题
  6. [附源码]计算机毕业设计springboot健身房信息管理
  7. vue-cli 项目 echarts 地图标点功能
  8. configure:13646: error: possibly undefined macro: AC_MSG_ERROR
  9. 一文读懂华为FIDO2指纹/3D 面容登录技术
  10. 金融统计分析与挖掘实战7.6-7.7