进入第三个 View ( Controller )后,SwiftUi导航栏按钮消失

标签 swiftui uinavigationcontroller

我在SwiftUi上遇到了一个大问题。真正简单的NavigationView层次结构中的“后退按钮”在第三个 View 上消失。如果我进一步查看,则“后退”按钮又在那里,我可以返回。
我搜寻了3小时,但只找到了这个SwiftUI: Back button disappears when clicked on NavigationLink
显然,这不能解决我的问题。
谢谢你的帮助!

最佳答案

对我来说,问题有点不同-后退按钮仅在与第三个 View 互动后才在第三个 View 上消失。单击进入 ListView 。
我的解决方法是使用旧的.navigationBarItems而不是.toolbar,因此:

 .navigationBarItems(trailing:
    Menu {
       Button(action: {
          //some action
       }) {
          //some label
       }
       Button(action: {
          //some action
       }) {
          //some label
       }                                        
    }
    label: {
       //some label
    }
 )
代替:
.toolbar {
   ToolbarItem(placement: .navigationBarTrailing) {
      Menu {
         Button(action: {
            //some action
         }) {
            //some label
         }
         Button(action: {
            //some action
         }) {
            //some label
         }                        
      }
      label: {
         //some label
      }
   }
}

关于进入第三个 View ( Controller )后,SwiftUi导航栏按钮消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64409091/

相关文章:

swiftui - 如果父 View 中已有工作表,则无法在 SwiftUI 的 subview 中显示工作表

ios - 如何在Swift 5中进行具有较大JSON响应的GET API调用?

iphone - iOS 6 中 UI 导航 View 和选项卡栏 View 的颠倒方向不起作用?

swift - 如何与代表一起更改全局导航栏标题?

ios - 不正确的 Popover 大小 - 在 Popover 中的 Navigation Controller 下显示 UITableViews 时

ios - 快速验证允许所有字母,但不能包含特殊字符或数字

SwiftUI:发送电子邮件

ios - SwiftUI:@State 已修改但在阅读之后的行时看似未更改

iphone - 导航 Controller 中的选项卡栏 Controller 确实可以工作,但是引用文献说它不会

iPhone 基于导航的应用程序 - 一些全局工具栏问题