demo地址:https://github.com/yugu88/BaoDian

由于在网上找了很久没有可行的解决方案,都是提了一点点就不说了,所以我还是自己跟踪源码研究了一整个晚上,把众多的坑踏平,为了方便以后的人解决沉浸式传了demo。

实现过程有很多的坑,工程源代码已上传github。。。

由于slidingmenu的 jar包和library包 的包名和类名都不同,请在github下载源码slidingmenu,slidingmenu已停止更新,我下载的是最新版本,也可以从我的项目里拷走。。。

代码中有详细的注释……主要是view层级和事件拦截的问题。。slidingmenu包内源码已经优化。

请不要使用网上流传的jar包

@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);//这里使用的是slidingmenu的第三种用法。setContentView(R.layout.slidingmenu_main);View view=getLayoutInflater().inflate(R.layout.main_menu_login, null, false);// 管理activityActivityUtil.getInstance().addActivity(this);//初始化菜单initMenu(view);top=getTitleTop();}@Overrideprotected void onResume() {super.onResume();// 判断当前SDK版本号,如果是4.4以上,就是支持沉浸式状态栏的if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);((LinearLayout) findViewById(R.id.sou_s)).setPadding(0, top, 0, 0);}}private int getTitleTop() {Class<?> c=null;Object obj=null;Field field=null;int x=0, sbar=0;try {c=Class.forName("com.android.internal.R$dimen");obj=c.newInstance();field=c.getField("status_bar_height");x=Integer.parseInt(field.get(obj).toString());sbar=getResources().getDimensionPixelSize(x);// 状态栏高度} catch (Exception e1) {e1.printStackTrace();}Log.e("状态栏高度:", sbar + ":" + x);return sbar;}private void initMenu(View view) {mMenu=(SlidingMenu) findViewById(R.id.slidingmenulayout);mMenu.setMode(SlidingMenu.LEFT);// 设置触摸屏幕的模式mMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);//获取屏幕宽高DisplayMetrics dm=new DisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(dm);// 设置滑动菜单视图的宽度mMenu.setBehindWidth(dm.widthPixels * 4 / 5);// 设置渐入渐出效果的值mMenu.setFadeDegree(0.35f);mMenu.setMenu(view);initView(view);}

slidingmenu阻碍沉浸式实现的原理讲解,demo下载地址在github相关推荐

  1. 沉浸式互动投影的原理是什么?

    随着技术发展和普及,互动灯光投影应用广泛,也比较普及,比较常见.常见的互动灯光投影主要分为这几类:地面互动投影,立面互动投影,以及灯光装置类互动.而随着技术的更迭,沉浸式光影互动投影渐渐成为网红. 沉 ...

  2. Android-推荐一个沉浸式状态栏开源库

    自从android4.4开始,android手机状态栏再也不是一成黑的时代,之前叫做变色龙,miui6发布会把他叫做沉浸式,之后大家就自然而然的接受了沉浸式这个名称,其实实际应该叫做Transluce ...

  3. Android开发类似苹果iOS 7的沉浸式状态栏

    1.什么是沉浸式状态栏? 沉浸式状态栏是指Activity的ActionBar的颜色和状态栏的颜色一样,两者连接起来了,看起来就像是一个整体,跟苹果的ios7以后的样式一样.如下图所示: (沉浸式状态 ...

  4. 仿网易云音乐新版详情页(沉浸式状态栏,上滑隐藏)

    一.效果 二.需求 1.Activity内容扩展到状态栏 2.内容为详情头和列表组成,列表上滑详情头会跟着同步上移,最后详情头缩小为Actionbar大小 3.在列表上滑的时候,详情头背景图形逐渐变暗 ...

  5. android 4.4 以上沉浸式状态栏和沉浸式导航栏管理,一句代码轻松实现

    ImmersionBar 项目地址:gyf-dev/ImmersionBar  简介:android 4.4 以上沉浸式状态栏和沉浸式导航栏管理,一句代码轻松实现,以及对 bar 的其他设置,详见 R ...

  6. Android 沉浸式状态栏及悬浮效果

    转载请注明出处 http://blog.csdn.net/xiaoyuan511 一.概述 现在大多数的电商APP的详情页长得几乎都差不多,几乎都是上面一个商品的图片,当你滑动的时候,会有Tab悬浮在 ...

  7. element-UI响应式(布局原理)讲解 - 贴文篇

    element-UI响应式(原理)- 讲解 element-UI官方说明:响应式布局 参照了 Bootstrap 的 响应式设计,预设了五个响应尺寸:xs.sm.md.lg 和 xl. Element ...

  8. Android布局延伸状态栏,Android沉浸式全屏讲解(状态栏、导航栏处理)

    Android应用中经常会有一些要求全屏显隐状态栏导航栏的需求.通过全屏沉浸式的处理可以让应用达到更好的显示效果.下面系统的讲解一下有关全屏,隐藏状态栏导航栏,沉浸式的知识. 在Android4.1之 ...

  9. android 沉浸式菜单栏,Android沉浸式全屏讲解(状态栏、导航栏处理)

    Android应用中经常会有一些要求全屏显隐状态栏导航栏的需求.通过全屏沉浸式的处理可以让应用达到更好的显示效果.下面系统的讲解一下有关全屏,隐藏状态栏导航栏,沉浸式的知识. 在Android4.1之 ...

最新文章

  1. 快讯 | 首期“医工结合系列研讨会”汇聚清华力量,共促医工融合发展
  2. Cubieboard ARM 集群
  3. 选择排序——一般选择排序,堆排序
  4. 实战Kaggle比赛(1):树叶分类
  5. VMware下Linux虚拟机无法连接网络
  6. 编程竞赛控制系统(PC2)使用说明书
  7. 3d建模电脑配置要求_专业3d动画建模需要什么配置 运行Blender的电脑配置推荐
  8. quicksearch连接oracle,dos命令下连接oracle数据库表
  9. lintcode_189. 丢失的第一个正整数
  10. insert into 语句 mysql_sql insert into 语句
  11. 计算机控制技术(本科生专业选修课) 期末考试总结
  12. sh: warning: setlocale: LC_ALL: cannot change locale (zh_CN.GB18030)
  13. python获取北京时间
  14. edg击败we视频_lpl2018春季赛2月4日WEvsEDG比赛视频:EDG2:1击败WE
  15. 基于STM32的多功能门禁系统(AS608指纹识别、密码解锁、刷卡解锁)
  16. 使用jq简单实现导航栏切换对应展现内容
  17. 怎么用j-link+j-flash烧写MM32
  18. 2021-2-26编程语言知识点整理
  19. 计算机专业学历简况,刘觉民
  20. 辛巴学院-Unity-剑英的c#提高篇(一)主循环

热门文章

  1. 【机器学习】正则化的线性回归 —— 岭回归与Lasso回归
  2. fastjson的@JSONField注解
  3. Jmeter连接SqlServer数据库进行压力测试
  4. 控制面板的cpl程序列表
  5. Windows下无法新建文件夹
  6. Android和IOS 调用 支付宝和微信 支付方法
  7. 184使用 Core Image 框架处理照片
  8. WIN7+wampserver2.4+zend stadio10.6.1配置Xdebug
  9. 关于MFC共享DLL的模块状态切换 .
  10. 惠普武汉实习生面试-20110320