问题标签 [android-immersive]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
199 浏览

react-native - React Native 如何拥有沉浸式模态

我有一个在 android 上沉浸式的应用程序,但是当我打开 Modal 时,会出现 android 导航。从我搜索的内容来看,Modal 对话框应该有一些标志以使其身临其境。

0 投票
2 回答
1612 浏览

android - 如何修复:当打开弹出菜单时,导航栏图标仍然显示(全屏 - 沉浸式粘性)

我正在尝试实现全屏应用程序,其中用户无权访问status- & navigation-bar

最好我希望它们被完全删除,但从我所读到的,除非你根设备,否则这是不可能的

所以我的问题基本上是:当我显示弹出菜单时,如何隐藏导航栏图标

前

后

到目前为止,我已经尝试过:

  • hideNavigation()在弹出菜单显示前后调用
  • 呼入hideNavigation()_onCreate(), onResume() & onWindowFocusChanged()
  • 请求关注另一个视图
  • 试图从下拉列表中清除焦点(尝试失败,并没有真正找到方法)
  • 更改图标颜色,“伪装”它会被隐藏(尝试失败,并没有真正找到方法)
  • hideNavigation()结合使用(Handler尝试失败,也许我没有正确执行)
  • 尝试配置一些 COSU/KIOSK 模式选项(也许有一些方法可以完全禁用整个导航栏?我还没有找到隐藏后退按钮的方法)

活动

标题栏

弹出菜单

预期结果:导航栏及其图标被隐藏,弹出菜单显示后,图标仍然隐藏

实际结果:导航栏及其图标被隐藏,弹出菜单显示后,图标显示

0 投票
1 回答
724 浏览

android - 当edittext以沉浸模式聚焦时如何隐藏导航栏

我正在开发一个带有Android的一次性设备。HW 有一个完整的键盘,但没有主键(Back、Home、Overview)。一些应用程序应该在沉浸式模式下工作,并且它们包含EditText字段。当应用程序处于沉浸模式时(我使用了锁定任务模式),如果我选择EditText字段,则从底部弹出一个与导航栏相同大小的黑条。我无法设置qemu.hw.mainkeys=1,因为它完全删除了导航栏,但我需要它用于其他一些应用程序。有什么办法可以EditText在某些情况下隐藏它吗?我可以访问完整的 AOSP 源。

0 投票
0 回答
349 浏览

android - Android:如何访问显示应用内容的缺口区域?

我有一部带缺口的手机。

当我希望我的活动全屏显示时,

  1. 缺口区域无法进入,它变成黑色。

  2. 导航栏正常消失。

我看到其他应用程序也无法访问刘海区域,刘海的两边都变黑了。

但是,Amazon Prime 视频应用程序能够在整个屏幕上显示,包括与凹槽相邻的区域。

Amazon Prime Video 应用程序如何做到这一点?

0 投票
3 回答
1193 浏览

java - Android videoview - 沉浸式 - 重叠控制器

我的应用程序上有一个视频视图,我使用 gogole 作为参考来使视频播放器全屏显示:

https://developer.android.com/training/system-ui/immersive#java

我按照上述网站上的说明进行操作,并且能够使视频播放器全屏显示,但是我的媒体控制器和设备控制器出现了一个奇怪的问题(它们重叠)并且不知道如何解决任何想法问题。

在此处输入图像描述

0 投票
1 回答
4147 浏览

android - Android/Unity - 全屏模式、Android 的状态栏和 3D 纵横比

我已经绞尽脑汁一个星期了,现在左右尝试,我似乎找不到答案。我实际上可能还有更多问题。

我们有一个应用程序,它在其中一个活动中使用 Unity 视图来呈现一些图形。由于这是一个普通的应用程序,而不是一个游戏,我们想要删除沉浸式模式和全屏,这样我们就可以恢复系统栏(状态和导航)

现在,自从最新版本的 Unity 以来,他们Start in fullscreen mode在 Android 的播放器设置中添加了该选项。问题是上面的选项只带回导航栏。

下一步是尝试使用一些原生的 Android 编码。所以基本上是这样 this.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 的:完成工作并带回状态栏。

现在,在我使用高宽比(18.5:9 - Pixel 3 XL - Android 9)设备之前,这就像一个魅力。

如果我简单地使用 Unity 全屏选项,图形可以很好地缩放,但我没有状态栏,这对于缺口手机来说更加明显:

在此处输入图像描述

如果我从 Android 中删除全屏标志,那么我会恢复状态栏,但渲染会中断:

在此处输入图像描述

???是出现的黑色区域。

抱歉,我无法向您展示实际的应用程序。

现在,我玩弄了所谓的“沉浸式模式”的其他标志:

在某些情况下,图形区域上方会出现一个类似大小的黑条。

最后,当黑条出现时,本机 UI 也会中断。对于底部栏,应该有一些工具可以在图形实际开始的地方向上推。底部的黑条是 UnityPlayer 的一部分,因为触摸那里实际上会导致与图形的交互。顶栏,当它在那里时,就更奇怪了。该区域实际上是本机工具栏应该在的地方,并且在某种程度上是。看不到,但触摸那里会触发 UI 事件!!!看起来 Unity 视图在非全屏时无法正确放置,因为 Native UI 最初显示正确,但当 Unity 启动时变得很奇怪。再次指出关注点。这仅发生在高纵横比设备中。16:9 的设备似乎没有问题。

所以主要问题是,我如何将应用程序从全屏中取出,同时显示状态栏而不破坏 Unity 渲染的高方面?

0 投票
1 回答
111 浏览

android - Android - 用时钟、电池完全隐藏栏

可以完全隐藏带有时钟的条吗?我的意思是全屏。我尝试在该onWindowFocusChanged()方法中使用 IMMERSIVE_STICKY 标志,但是当我触摸屏幕边缘时,条会拉下。

最良好的问候

0 投票
2 回答
174 浏览

android - 沉浸式模式活动转换

我已成功将应用程序设置为沉浸式模式,因为我想隐藏状态栏(在顶部屏幕上)和导航栏(在底部屏幕上)。问题是,当活动发生变化时,底栏会自动出现,并在下降后立即消失。我想避免这种情况。

所有活动都在清单中设置了 AppTheme.NoActionBar 样式:

并且在 OnCreate 中都有如下代码:

这是setFullscreen()函数:

我应该在活动生命周期中的 onCreate 之前设置这些属性吗?还是有其他解决方案?还是我以错误的方式实现了沉浸式模式?

0 投票
1 回答
30 浏览

android - 完全移除 Android 应用中的操作栏导航栏等

我需要从我的应用程序中完全删除操作栏和导航栏。所以我一直处于全屏状态,无法滑动,所以我恢复了导航栏。

我现在在我的 onreate 方法中有这段代码,它使它消失,但只要你滑动导航栏就会再次出现。我怎样才能避免这种情况?

0 投票
1 回答
36 浏览

android - 为什么在最小化应用程序并返回后会显示导航栏?

我使用此代码隐藏导航栏:

但是在最小化应用程序并返回后会出现导航栏?有可能避免这种情况吗?