为交互式 popviewcontroller guesture 展开 segue

Posted

技术标签:

【中文标题】为交互式 popviewcontroller guesture 展开 segue【英文标题】:Unwind segue for interactive popviewcontroller guesture 【发布时间】:2017-07-03 09:07:59 【问题描述】:

对于初学者 - 我使用 Swift 3 和 Xcode 8。

我熟悉可能性,如何从 StoryBoards 或以编程方式(例如,在 UIButton click 上)“展开转场”。 但我很感兴趣,是否有可能将“unwind segue”用于“interactive popviewcontroller”guesture?

通过“交互式 popviewcontroller”来宾 - 我的意思是通过从左侧向右侧滑动屏幕来关闭/弹出当前推送的 UIViewController 的选项。

【问题讨论】:

【参考方案1】:

您的问题的解决方案实际上非常简单,因为您似乎熟悉如何连接按钮并使用它们来“解开 segues”,如您命名它或关闭视图控制器等。您可以做的是获得一个 Swipe来自对象库的手势识别器。

或屏幕边缘平移手势识别器(无论哪个适合您)。

在情节提要中将该识别器添加到您的 VC 中,然后像连接 UIButton 一样连接它。 另外,请注意,在属性检查器中,您可以使用一些属性并设置滑动的方向、所需的触摸次数等。

查看下一张图片以了解要处理的其余实现:

我希望这会有所帮助:-)

【讨论】:

感谢 Dido 的回复。这应该可以解决问题并为其添加一些额外的过渡动画,它会很好用!再次感谢你! :) 但是是否有任何通用的可能性与默认添加的原生交互式弹出视图控制器手势进行交互? 当您将 VC 嵌入到导航控制器中时,您可以得到与您正在寻找但不一样的东西。通常,您确实会免费获得一个后退按钮和从左向右滑动的手势,这会将您带回到以前的 VC。我想你知道我在说什么,你一定看过关于导航控制器等的教程。除此之外,我很确定 Swift 中没有其他东西可以满足你的要求。您可以使用我向您展示的故事板或以编程方式(更详细一点)来完成。不过我想不出别的了。 是的,看来你是对的,我已经搜索了很多通用的东西,但什么也没找到。您的解决方案效果很好!非常感谢! :) 我很高兴能帮上忙!

以上是关于为交互式 popviewcontroller guesture 展开 segue的主要内容,如果未能解决你的问题,请参考以下文章

popViewController 适用于一个视图,而不是另一个

无法返回 - popViewController Animated 不工作,向后滑动也不工作

PopViewController 正在占用内存

默认 popViewController 过渡意外淡出

popViewController 和 pushViewController 动画

popViewController(animated: true) 动画运行缓慢