在SwiftUI中,如何在界面方向改变之前执行一段代码?

问题描述 投票:0回答:1

我需要在设备界面开始旋转之前执行代码,但我似乎找不到任何可行的解决方案。

我遇到了

UIDevice.orientationDidChangeNotification
,但找不到类似的东西来通知方向改变将开始。

我尝试使用自定义

UIViewControllerRepresentable
创建一个
UIViewController
来覆盖
func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator)
,但该函数根本没有被调用(我没有忘记使用 super 来传播它)。

有什么想法吗?

编辑:需要 iOS 15.0+ 的支持

swift swiftui orientation
1个回答
0
投票

我知道你说过你正在打电话给超级。您是否确保也在

viewWillTransition(to:with:)
的父级中调用
UIViewController
这个类似问题的答案提到了这一点。

© www.soinside.com 2019 - 2024. All rights reserved.