问题标签 [gesture-navigation]
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.
android - 如何全局检测设备是否处于手势导航状态?
背景
我在一个应用程序上工作,该应用程序具有显示在其他应用程序上的浮动 UI(使用 SAW 权限,又名“显示在其他应用程序上”)。
它还处理可能来自侧面的触摸事件。
问题
似乎在某些设备上,启用手势导航后,触摸侧面可能会优先考虑系统导航而不是应用程序。
我试过的
我想更改 UI,以便至少它会更大并且更容易触摸,但前提是操作系统的当前配置是手势导航。
可悲的是,我发现的所有与手势相关的问题都与您何时已经在 Activity 中有关,并提供处理保护区。我发现没有什么与简单检测有关,更不用说没有 View/Activity/Window。
问题
仅给定 Activity/View 之外的基本类,我如何检测(包括更改时的回调)设备是否正在进行手势导航?
javascript - 移动设备中的 window.screenY 在 Webkit(Chrome、Safari)上始终为零,但在 Gecko(Firefox)上有效
问题
window.screenY在 Safari 和 Chrome(Android 和 iOS)上总是返回 0。
我需要知道视口相对于屏幕、移动设备、浏览器的垂直位置。
根据 MDN,Window.screenY 应该返回它。它在 Firefox 上运行良好,但在 Chrome(Android 或 iOS)或 Safari(iOS)上运行良好。我在 WebKit ( https://bugs.webkit.org/show_bug.cgi?id=234256 )上提交了一个错误,但我想看看其他人是否遇到过这个问题或有任何解决方案。
哈克部分解决方案
clientY我可以通过从screenY触摸/点击事件中减去来得到这个。但我希望这是一般的。
原来的问题
我有一个想要附加到窗口底部的元素,但不是一直到屏幕底部。即在Android 的3 按钮菜单上,屏幕底部的填充非常棒。但是,使用 android 上的手势导航,窗口和屏幕之间没有底部填充。
我发现无法检测用户是否有“三键导航按钮”或“手势导航”。我希望通过减去screenYfrom来猜测底部window.screen.availHeight - window.innerHeight的等价物screenY。(窗口和屏幕之间的底部填充。)
