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

Android 透明状态栏(伪沉浸)

4.4 以上要做所谓沉浸,其实不是真正意义上的沉浸,只是一种透明状态栏。 而由于 Android API 的不同,需要考虑 4.4、5.0、6.0 前后的不同。...适配 4.4 4.4 版本需要透明状态栏,将内容往下移,然后再加一个和状态栏一样大小的 View 覆盖到状态栏上面。...,但某些 Activity 要自己单独的样式,又创建了一个对象,结果专门做沉浸的这个类被构造了两遍,导致 paddingTop 计算错误。...状态的重置 因为考虑同一个 Activity 多次改变状态栏颜色的情况,遇到的一个比较烦的问题是,许多状态需要重置,不然就会影响下一次,而且如果设置图片又改成颜色的,那么要考虑的更多,一会希望图片内容顶到状态栏下面...Activity 是 SDK 里面的,可以用 ActivityLifecycleCallbacks,在 ActivityLifecycleCallbacks 里可以拿到 Activity 的实例,这里可以做沉浸

2.3K20

android 沉浸状态栏的用法

好了废话不多说了,沉浸状态栏现在已经非常普及了,不然请自行脑补一个画面(主题是蓝色的界面搭配白色,后来头顶冒出来一块红色的系统自带状态栏, 那画风。。。。)...沉浸状态栏如下 : 再来一张 其实沉浸状态栏不仅仅指的是顶部的状态栏,基于手机的不同,还有底部的手机也可以改成类似的 ,前提是手机得有这种底部的按钮: 如下 效果介绍完了,接下来就是实现了...如果是4.4之前版本的手机的话,是不会产生沉浸状态栏的效果的, 而且部分手机会已经帮助你实现了,我这里是乐视2 版本是 6.0 已经帮我实现了部分界面的沉浸; 代码片段 ; /**...* 沉浸状态栏 * 当系统版本为4.4或者4.4以上时可以使用沉浸状态栏 */ private void initState() { if (Build.VERSION.SDK_INT...该行是设置虚拟键盘栏的透明效果 注释即为使用默认的效果 } } 然后将这份代码放入你的BaseActivity中去,记得是onCreate方法中: 然后去挨个配置 ,这两行代码写在每一个要使用沉浸的布局里

56020

沉浸状态栏的封装使用

随着用户要求的不断提高,Android版本的不断升级,沉浸状态栏似乎已经成为了每个App的必备功能。   ...在笔者的使用中,沉浸状态栏分为两种: 控制状态栏颜色,使状态栏和标题栏颜色相同或者相近。达到合二为一的效果。 ? 使我们开发部分顶进状态栏,与状态栏重合。...如何控制状态栏:   在Android中用Window类管理状态栏,我们将固定方法封装为StatusBarUtil。...我们的需求是实现沉浸状态栏,并且我们同样不希望没个页面都要我们手动去设置一次,所以我们将在BaseActivity中实现。  ...首先我们得现将状态栏设置为全透明,这样,我们的第二种状态栏方式就实现了,放上图片会发现,图片会顶入状态栏中。

96510

Android实现沉浸状态栏功能

Android中实现沉浸状态栏的功能,供大家参考,具体内容如下 1. 先上效果图,实现沉浸状态栏有两种方式,一种是通过写Theme主题的方式,另一种是写代码的方式。...若要使多个页面出现沉浸状态栏,则使用主题的方式更方便,如果只要使单个页面出现,则使用代码方式更好!当然了,看个人喜好而去。 ? 2....true</item //取消actionBar的标题 <item name="android:windowTranslucentStatus" true</item //允许页面可以拉伸到顶部状态栏并且定义顶部状态栏透明...</item //取消actionBar的标题 <item name="android:windowTranslucentStatus" false</item //允许页面可以拉伸到顶部状态栏并且定义顶部状态栏透明...WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS | WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); //允许页面可以拉伸到顶部状态栏并且定义顶部状态栏透名

1.8K50

Android沉浸状态栏与DialogPopupWindow兼容

背景 在使用某APP的过程中发现,该APP对PopupWindow的沉浸支持并不好,在使用PopupWindow的时候,状态栏会变成纯白色,看不到时间信号等等。如下图所示 ?...APP弹出菜单时候状态栏底色纯白 而正常的状态栏应该如下图所示 ? 正常情况下状态栏显示 问题追踪 看到这个之后觉得顶部看不到时间、信号神马的非常不舒服,于是上Google查了一下原因。...其中的有一句话: Set the dialog to not focusable (makes navigation ignore us adding the window) 设置Dialog没有焦点,使得状态栏忽略新添加的...Window 这样就能可以实现状态栏在PopupWindow/Dialog弹出的时候,也可以正常显示了,在自己做的Demo中也证实了这一点 解决办法 在PopupWindow/Dialog展示(show...)之前,调用setFocusable(false),这样在弹出PopupWindow的时候没有焦点,就不会影响沉浸状态栏的显示了。

4.4K30

Android 沉浸状态栏的多种样式

和尚我最近正在处理客户端顶部沉浸展示图片,借此整理了一下和尚自己研究测试的沉浸状态栏。...沉浸状态栏大家都很熟悉,即 APP 界面图片延伸到状态栏, 应用本身沉浸状态栏,即顶部不会默认展示系统的黑条。和尚我技术有限,理解不透彻,仅分享一下自己应用测试中可以呈现的几种样式。 ?...图片作为布局背景沉浸样式 ? 图片作为布局背景样式 ? 图片被拉伸 图片作为布局背景的方式比较简单,方式与公共的相同,只是不需要 Toolbar 而已。...center_horizontal" android:src="@mipmap/icon_bg" /> ---- Tips1:还有一种样式与沉浸展示效果一样...,就是折叠布局 CollapsingToolbarLayout 折叠后的效果也是沉浸状态,可以固定折叠后的状态,但是并不建议这样处理,只是偶然想到而已,各位有兴趣可以研究一下。

1.4K41

Android沉浸状态栏设计的实例代码

本文介绍了android沉浸状态栏,分享给大家,希望对大家有帮助 一、概述 现在主流的App设计风格很多都用到了Materail Design,今天我们就来简单的实现一下改变状态栏颜色、让状态栏透明这两种效果...二、实现状态栏设置颜色 我们写一个工具类StatusBarUtils 代码如下: /** * 设置状态栏颜色 * * @param activity */ public static...else if (Build.VERSION.SDK_INT Build.VERSION_CODES.KITKAT) { // 4.4 - 5.0 之间 采用一个技巧,首先把他弄成全屏,在状态栏的部分加一个布局...resources.getDimensionPixelOffset(statusHeightId); } 在Android5.0以上直接调用系统提供的方法 setStatusBarColor,4.4-5.0之间,首先弄成全屏,然后在状态栏的部分加一个布局...三、设置状态栏透明 代码: public static void setActivityTranslucent(Activity activity) { if (Build.VERSION.SDK_INT

44931

沉浸媒体

他分享了沉浸媒体的进展与演进路线,展现了可期的多媒体新体验。 文 / 王田 整理 / LiveVideoStack 概览: 什么是Immersive Media?...我们可以称之为沉浸或浸入的媒体。作为一种体验,人们对这方面的需求,或者愿望可以追溯到很远。广义上来说,通过音视频的技术,产生身临其境的感觉,就叫做浸入的媒体。...众所周知,当你戴上VR头盔之后会有非常强烈的沉浸在现场的感觉。而近几年,Immersive Media变得越来越热,很大的一个原因就是VR的兴起。...一个很重要的趋势就是沉浸的Immersive Media,当然并不是说Immersive是未来唯一的方向,还有其它重要的方向,比如:超高清—8K,或者媒体智能化等方向。...开始是3自由度,360度的,给大家带来一个沉浸的体验,未来还有向6自由度的转移。后面会具体讲解,3自由度和6自由度的含义。

1.2K30

沉浸状态栏的三种实现方式

沉浸算是目前Android行业比较流行的一种App设计风格,将菜单栏北京设置为导航栏的颜色,感觉顶部状态栏像是被入侵了一样,因此称为沉浸菜单栏。本文将介绍三种方式去实现沉浸状态栏。 ?...三种方式实现沉浸状态栏 首先看下第一种方式 系统的方式沉浸状态栏实现 步骤一 当系统版本为4.4或者4.4以上时可以使用沉浸状态栏 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT...步骤二 布局加入: android:clipToPadding="true" 我们看下activity和布局文件 FirstActivity.java: /** * 沉浸状态栏...android:textSize="24dp" android:background="@color/mask_tags_1" android:text="你好,沉浸状态栏...实现沉浸状态栏 * */ private void initState() { //当系统版本为4.4或者4.4以上时可以使用沉浸状态栏 if (

1.6K30

Android沉浸状态栏 + actionBar渐变 + scrollView顶部伸缩效果

第一部分:沉浸状态栏(API-Level 19, Android4.4 KitKat 之后加入的东西),而且在Api-Level 21版本中新增了一个属性(下面会说到)。...R.id.iv_actionbar_left); iconRight = contentView.findViewById(R.id.v_actionbar_right); } /** * 设置状态栏高度...所以,我的做法是声明了一个高度为0.0dp的 statusbar,背景为透明,然后获取状态栏高度并赋值到它上,来实现兼容。事实证明,这样做的兼容效果最好。...获取状态栏高度代码: /** * 获取状态栏高度 * * @return */ public int getStatusBarHeight() { //获取status_bar_height...zoomView.setLayoutParams(params); return true; } } return super.onTouchEvent(event); } } 总结 以上所述是小编给大家介绍的Android沉浸状态

1K20

详解关于MIUI 9沉浸状态栏的最新适配

问题: 最近更新了最新的MIUI 9 系统,安装上公司的应用之后,发现之前适配过的沉浸状态栏忽然没有效果了,感觉很郁闷的我于是去网上搜了一下关于小米手机状态栏适配方面的文章,发现大部分文章都还是之前的适配方案...) { e.printStackTrace(); } } 于是乎就自己去小米的开放平台逛了逛,然后就找到了问题所在: 1、在 Android 6.0 以前,Android 没有方法可以实现「状态栏黑色字符...2、在 Android 6.0 及以上版本,Android 提供了标准的方法实现「状态栏黑色字符」效果,但这个方法和 MIUI 的方法产生了冲突,以致于当开发者使用 Android 标准方法时,没有出现预期的效果...在新的 MIUI 版本(即基于 Android 6.0 ,开发版 7.7.13 及以后版本): 状态栏深色字体: Window window = getWindow(); window.addFlags...setSystemUiVisibility(flag);​ } } catch (Exception e) { e.printStackTrace(); } } 修改为以上代码之后,终于又看到了熟悉的沉浸效果

1.1K30

Android 沉浸全屏

Android 沉浸全屏 Android 4.4 带来了沉浸全屏体验, 在沉浸全屏模式下, 状态栏、 虚拟按键动态隐藏, 应用可 以使用完整的屏幕空间, 按照 Google 的说法, 给用户一种...SystemUiFlags.HideNavigation; Window.DecorView.SystemUiVisibility = uiOpts; 在普通全屏模式下, 应用可以占据屏幕的全部空间, 当用户触摸屏幕的任何部分时, 会自动退出全屏模 ,...沉浸模式 (Immersive) 沉浸模式通过设置下面的标记位实现: var uiOpts = uiOpts = SystemUiFlags.LayoutStable | SystemUiFlags.LayoutHideNavigation..., 应用使用屏幕的全部空间, 当用户从屏幕的上方边沿处向下滑动时, 也不会退出该 模式, 但是系统界面 (状态栏、 导航栏) 将会以半透明的效果浮现在应用视图之上 (如下图所示), 只有当用户点击系统界面上的控件时..., 才会退出黏性沉浸模式。

1.5K20
领券