我从这里得到了相反的问题.默认情况下iOS7,UINavigationController堆栈的后滑动手势可以弹出呈现的内容ViewController.现在我只是穿着所有self.navigationItem.leftBarButtonItem风格的制服ViewControllers.
这是代码:
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithImage:LOADIMAGE(@"back_button") style:UIBarButtonItemStylePlain target:self action:@selector(popCurrentViewController)];
Run Code Online (Sandbox Code Playgroud)
之后,navigationController.interactivePopGestureRecognizer被禁用.如何在不删除自定义的情况下启用弹出手势leftBarButtonItem?
谢谢!
objective-c uinavigationbar uinavigationcontroller uinavigationitem ios
在 SwiftUI 中,每当导航栏被隐藏时,滑动返回手势也会被禁用。
有什么办法可以在保留 SwiftUI 中的向后滑动手势的同时隐藏导航栏?我已经有一个自定义的“返回”按钮,但仍然需要手势。
我已经看到了一些 UIKit 的解决方案,但仍然不知道如何在 SwiftUI 中做到这一点
这是您自己尝试的代码:
import SwiftUI
struct 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)
}
}
Run Code Online (Sandbox Code Playgroud)
非常感谢任何建议或解决方案
我有一个ListView,TasksView然后EditView。
流程是这样的:你有一个列表单元格,你点击它会带你到TasksView当一行被点击时TasksView它会带你到EditView。
当我向后滑动一半以导航到上一个视图时,导航栏会变得笨拙并重叠。它主要发生在我使用 navigationBarItem -(按钮)时。
其中TasksView (detailView)有一个列表和一些导航栏修饰符:
ZStack {
List {
// code here
}
}
.onAppear { UITableView.appearance().separatorStyle = .none }
.onDisappear { UITableView.appearance().separatorStyle = .none }
.background(Color("primaryBackground"))
.edgesIgnoringSafeArea(.bottom)
.navigationBarTitle("\(listItem.name ?? "")", displayMode: .inline)
.navigationBarItems(trailing:
Button(action: {self.deleteList()}) {
Image(systemName: "trash.circle.fill")
}
)
Run Code Online (Sandbox Code Playgroud)
也可以这样说EditView,当您轻扫一半EditView返回 时TasksView,会发生同样的事情。
这是行动中的错误:
任何人都知道如何解决这个错误?
编辑:
struct TasksView: View {
@Environment(\.presentationMode) var presentationMode
@EnvironmentObject var taskControl: TaskControl
@EnvironmentObject …Run Code Online (Sandbox Code Playgroud)