不同屏幕尺寸的不同视图控制器

时间:2016-01-12 22:54:03

标签: ios uiviewcontroller storyboard

在我的故事板上,我创建了2个视图控制器;适用于iPhone 5和iPhone 6的一个。如何针对不同的手机大小访问不同的视图控制器。在线我发现了一些东西,让我可以切换不同的故事板,但我只想换一个屏幕。有没有什么方法可以做到这一点,或者是用一个不同的屏幕制作重复的故事板?

1 个答案:

答案 0 :(得分:0)

我发现大小类很容易出错,以至于我很想在某些时候使用这种方法(最终使我的所有约束完全独立于屏幕尺寸和方向,但那是另一个有趣但不相关的故事)。

您可以这样做的一种方法是使用带有命名约定的自定义segues。假设您已经有一个故事板segue链接到iPhone5的视图控制器,并且您想将其重定向到您的iPhone6变体。
给那个segue一个名字,用" .iPhone5"结束。然后创建一个自定义segue(从源viewController的红色方块拖动到目标),并给它相同的名称,但使用" .iPhone6"扩展

您可以在呼叫控制器中实现覆盖shouldPerformSegueWithIdentifier,如果您在iPhone6上,则使用您收到的标识符替换错误和编程触发(performSegueWithIdentifier)iPhone6 segue" .iPhone5& #34;用" .iPhone6"。

您可以将该代码集中在UIViewController的函数或扩展中,以便在各种视图控制器上实现它。