如果您想要遵循Apple的指南和默认的大小来显示模态视图控制器,那么这很容易,但如果您需要比表单、页面或全屏更多的内容,Modaly将帮助您,所有这些都可以在Storyboard中定义,您喜欢的任何视图控制器大小!
Modaly
可通过Cocoa Pods获取,所以您只需在Podfile中包含此行即可。
pod 'Modaly'
您只需要在Storyboard中选择一个按钮,并按住鼠标右键将其拖动到另一个视图控制器。当出现动作转场对话框(以下图片)时,选择modaly
。
之后,您需要在视图控制器度量菜单中选择freeform
(以下图片),这样就全部完成了!
Modaly
支持常见的UIViewControllers和UINavigationControllers,最佳的方式来了解它就是下载并打开Demo
XCode项目。
为了便于转场使用,我将自身作为UIViewControllerTransitioningDelegate
使用转场,因此保存对转场的引用很重要,因为它可能在显示时释放,并且动画会调用已释放对象。这可以在-prepareForSegue:sender:
方法中轻松完成。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue isKindOfClass:[JMGModaly class]]) {
// It needs to retain segue because it's animation transition delegate
self.modalSegue = (JMGModaly *)segue;
}
}
再一次,我建议您打开示例项目以轻松查看。
Modaly
可在MIT许可证下获得。有关更多信息,请参阅LICENSE文件。