隐藏导航栏而不会丢失SwiftUI中的向后滑动手势
在SwiftUI中,每当导航栏被隐藏时,向后滑动手势也将被禁用。
在保留SwiftUI中的向后滑动手势的同时,有什么方法可以隐藏导航栏?我已经有一个自定义的“后退”按钮,但仍然需要该手势。
我已经看到了UIKit的一些解决方案,但仍然不知道如何在SwiftUI中进行操作
这是尝试代码的代码:
import SwiftUIstruct RootView: View {
var body: some View {
NavigationView {
NavigationLink(destination: SecondView()) {
Text("Go to second view")
}
}
}
}
struct SecondView: View {
var body: some View{
Text("As you can see, swipe to go back will not work")
.navigationBarTitle("")
.navigationBarHidden(true)
}
}
任何建议或解决方案,不胜感激
回答:
这应该通过扩展来起作用UINavigationController
。
extension UINavigationController: UIGestureRecognizerDelegate { override open func viewDidLoad() {
super.viewDidLoad()
interactivePopGestureRecognizer?.delegate = self
}
public func gestureRecognizerShouldBegin(_ gestureRecognizer: UIGestureRecognizer) -> Bool {
return viewControllers.count > 1
}
}
以上是 隐藏导航栏而不会丢失SwiftUI中的向后滑动手势 的全部内容, 来源链接: utcz.com/qa/420181.html