【问题标题】:How to segue between views horizontally without navigation bar?如何在没有导航栏的情况下水平切换视图?
【发布时间】:2018-09-14 02:12:23
【问题描述】:

我目前正在制作一个具有 3 个视图的简单应用。我希望能够使用滑动手势在视图之间移动。

请记住,我对使用 xcode 还很陌生,所以我目前的解决方案是:将“滑动手势”添加到我的第一个视图控制器,并使用“显示”作为我的转场将该手势连接到下一个视图。

但是,“显示”使转换自下而上,而我想从右向左转换。

我尝试将我的第一个视图嵌入到导航控制器中,它允许水平过渡。我使用“滑动手势”将我的第一个视图链接到我的第二个视图,瞧,它通过水平转接进入第二个视图。但是,返回第一个视图的唯一方法是按导航栏的“返回”按钮。

有没有办法使用您自己的手势/按钮在几个视图之间导航?

【问题讨论】:

    标签: xcode navigation


    【解决方案1】:

    如果 segue 不是必需的,则可以使用 push 和 pop 功能在视图之间进行转换。设置 IBAction 以接收滑动手势,并让它们根据用户滑动的方式执行推送或弹出。

    @IBAction func leftSwipeHandler(_ gestureRecognizer : UISwipeGestureRecognizer) {
      if gestureRecognizer.state == .ended {
        let view2 = secondViewController()
        navigationController?.pushViewController(view2, animated: true)
      }
    }
    
    @IBAction func rightSwipeHandler(_ gestureRecognizer : UISwipeGestureRecognizer) {
      if gestureRecognizer.state == .ended {
        navigationController?.popViewController(animated: true)
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2011-12-16
      • 1970-01-01
      • 2013-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-23
      相关资源
      最近更新 更多