2013-03-14 81 views
1

我有一个iPad应用程序在一个故事板(xcode)中有几个独立的视图控制器。我必须让他们使用模态段来设置彼此之间的转换。我想知道在执行segue之后最好的方法是在处理dimissing viewcontrollers。你是否应该在顺利成功后解雇先前的视图控制器?如果是的话哪种方式是最优的?处理故事板中视图控制器之间的模态轮廓

回答

2

如果基本视图控制器A将视图控制器B呈现为模态,然后您需要出现模态C,则应在呈现C之前关闭模态B.这假定模态B中的任务不依赖于用户的结果用C

行动可以实现驳回B和介绍下与之间的平滑过渡:

// instantly dismiss B (or whichever is showing) 
[self dismissModalViewControllerAnimated:NO]; 
// show the other modal with your existing segue 
[self [email protected]"c_segue"]; 

从UI设计的角度来看,情态动词是中断/交互用户必须处理而在另一个视图控制器上执行任务(A在你的情况下)。如果模式B中的交互需要另一个这样的中断(意味着B必须将C作为模式),现在是时候看看你的UI设计,看看你正在做什么是最好的方法。

如果你实际上在之间移动(你不想再有A),那么一个模式肯定是错误的选择。您可能想要执行替换 seque,或查看ContainerView以管理视图控制器的交换。

+0

谢谢你的回答非常有见地 – bardockyo 2013-03-14 16:43:49

相关问题