我有一个 TableView Controller 和另一个 View Controller 。现在我的要求是,当我滑动 View Controller 时,我需要在另一个 View Controller 上滑动一半的表格 View Controller 。我可以显示的图像是这样的:
是否可以通过使用 Swipegesture 来实现这一点。如果可能的话,我怎么能在 Swift3 中做到这一点?
最佳答案
虽然有一些库可以为您执行此操作,但如果您要自己执行此操作,基本思想是您可以创建一个“从边缘滑动”手势识别器来启动 View Controller 的自定义演示(具有您的菜单)。它包括:
UIViewControllerTransitioningDelegate
协议(protocol)),指定在下一个场景的呈现期间要使用的动画 Controller 和交互 Controller (都在下面描述); UIViewControllerAnimatedTransitioning
),从右边缘指示场景的动画; UIPercentDrivenInteractiveTransition
),您可以使用它来选择性地通过手势驱动转换; UIPresentationController
子类),它指示是否删除所显示的 View (在这种情况下,您不希望将其删除),以及与新场景的动画演示一起动画的任何其他 chrome (例如,您经常使呈现 View 变暗或模糊);和 有关更多信息,请参阅 WWDC 视频 Custom Transitions Using View Controllers和 A Look Inside Presentation Controllers .
见 https://github.com/robertmryan/SwiftCustomTransitions/tree/rightside对于呈现以下 UX 的 Swift 3 示例:
这一切都非常复杂,您可能很想考虑使用第三方库来呈现滑入式菜单。但是,如果您想“自己动手”,这些就是所涉及的基本部分。
关于ios - 如何在另一个 View Controller 的顶部滑动 View Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45762274/