gpt4 book ai didi

swift - 呈现 View Controller 时如何在 iOS13 中获取可见 View 大小

转载 作者:行者123 更新时间:2023-12-04 04:23:55 26 4
gpt4 key购买 nike

在 iOS13 中,呈现 View Controller 的默认方式更改为“工作表/卡片” View 。由于我没有使用自动布局(为什么不使用,这并不重要和相关),我依赖于根据 View 的框架获取元素的位置。

现在,新方法的问题是, View 框架不再真正反射(reflect)屏幕上可见的实际内容大小。例如。如果我根据 view.frame 底部坐标在 View Controller 的底部放置了一个 UIButton,它现在将被切断,因为 View 实际上向下移动了漂亮的“工作表/卡片”视觉指示的数量顶端。同样的问题在 iPad 中更为明显,在 View Controller View 中将另一个 View 居中将被偏移,因为默认的呈现样式现在是屏幕中间的“工作表”。

我目前已经更改了所有内容以强制使用全屏版本,但使用新的精美设计会很好。

有人知道如何在不更改自动布局的情况下以新样式获得实际可见的矩形/坐标吗?

Full screen presentation Default in iOS13 (iPhone) Default in iOS13 (iPad)

这是他们的样子。 “花”在 View 中居中,X 按钮不应太靠近底部或在 iPad 版本中完全消失。

最佳答案

终于明白了。当我在 viewDidLoad 中设置项目的位置时,框架计算不正确,因此导致布局不正确。在 viewDidLoadSubviews 中重置框架和位置时,位置放置正确。

关于swift - 呈现 View Controller 时如何在 iOS13 中获取可见 View 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58336346/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com