swift - 嵌套详细 View 中缺少后退按钮 (UISplitViewController)

标签 swift uinavigationcontroller uisplitviewcontroller

我正在尝试为 UISplitViewController 的详细 View Controller 设置嵌套 View Controller 。为简单起见,我将主视图保持原样;详细 View 中有一个按钮,“走得更远”,它转到第二个 View Controller 。在紧凑型设备 iPhone 中,一切正常,用户点击“继续”,它导航到第二个 View Controller ,后退按钮出现在左上角,用户可以返回到第一个 View 。

但在 iPad 的横向模式下,当用户单击“继续”按钮并导航到第二个 View Controller 时,那里没有后退按钮。

这是我的设置: enter image description here

整个项目可在 https://github.com/maysamsh/SplitViewWithNestedDetailViews 获得。

最佳答案

  1. 问题的根源在于第一个和第二个之间的导航 Controller 。没有必要,所以请继续删除它。
  2. 直接从 Go Further 按钮创建一个 Push segue 到 Second One 的 View 。 enter image description here
  3. 将 FirstViewController 中的 prepareForSegue 更改为:

    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        let controller = segue.destination
        controller.navigationItem.leftBarButtonItem = splitViewController?.displayModeButtonItem
        controller.navigationItem.leftItemsSupplementBackButton = true
        print("prepare")
    }
    

关于swift - 嵌套详细 View 中缺少后退按钮 (UISplitViewController),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41409271/

相关文章:

iphone - 使用我自己的图像更改导航栏背景

ios - 如何确保我的详细信息 View Controller 始终嵌入到 UINavigationController 中?

ios - 在通用 iOS 应用程序中使用 Storyboard 的 UISplitView

ios - UIView 约束在使用 iPhone X 时表现不同

ios - 如何在 Swift 中为每一帧的流媒体和录制视频添加实时时间戳?

iphone - 导航问题

ios - Swift:以模态方式呈现并解除导航 Controller

ios - 使用 UINavigationController 推送 EAGL-View 时 iPhone 内存使用量增加

ios - 在 Parse 中按降序显示最后 30 条记录

ios - iOS 8 中的 Facebook SDK 与 Swift/Xcode beta 5 返回 accessToken 但更新后没有 userID