我怎么知道iPad上的分割窗拖动手柄何时出现?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我怎么知道iPad上的分割窗拖动手柄何时出现?相关的知识,希望对你有一定的参考价值。

当应用程序在iPad屏幕的三分之一处运行时,其窗口顶部会有一个小拖动手柄。在ios 10中,拖动该句柄可以切换应用程序在那里打开的内容。在iOS 11中,您可以使用它将应用程序从屏幕的三分之一更改为浮动屏幕的其余部分。

我的问题:我怎么知道这个句柄何时出现,或者至少知道有什么东西占据了这个空间?我需要在没有conflicting with it的情况下围绕它布置我的UI内容。它doesn't appear to work with iOS 11's Safe Area APIs

See here用于试图将标签放在窗口顶部而不覆盖拖动手柄的示例项目。在iPad屏幕的三分之一处运行它。

答案

首先复制雷达。这绝对是应该由安全区魔术处理的东西。

这里的问题是SpringBoard呈现句柄,因此您只能应用技巧来猜测它当前是否可见。您可以确定窗口的大小是否正确以及它是否位于屏幕上的正确位置,然后添加一些额外的安全区域插入。这通常是不明智的,原因有几个,例如不知道所有出现句柄的情况,必须考虑从左到右的系统等,但在这种情况下,问题似乎如此令人震惊,我是不确定我是否建议离开。

编辑

还有一个选择是查看UIWindow.safeAreaInsets是否返回正确的值。 UINavigationController能够正确地推断出安全区域,因此它隐藏在某处。

以上是关于我怎么知道iPad上的分割窗拖动手柄何时出现?的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序中悬浮窗功能的实现(主要探讨和解决在原生组件上的拖动)

Nimbus 游戏手柄方向键映射?

带手柄的拖放

对弹窗广告0容忍

SwiftUI Map iOS 14 手柄拖动和放大手势

如何将子元素以外的元素用作拖动手柄?