在没有 Segue 的情况下在 UIViewController 之间移动
Moving between UIViewControllers without Segue
我有一个故事板,上面有 8 个 UIViewController
(并且还在增加)。我需要能够按需在任何一对之间移动。本质上,我想做的是模仿 UITabBarController
的功能。因为有这么多,我不能只使用 UITabBarController
(那会立即解决我的问题),所以我使用带有嵌入式 UITableView
的 UIPopoverController
来允许用户选择他们的目的地。
当然,我可以在故事板上创建 segues,但是要设置我当前需要的所有 segues,我将不得不为我现在拥有的视图控制器创建 56 个这样的 segues,并且可能随着事情的发展更多。
我的一个想法是创建一个 'hub' 视图控制器,它除了为每个 'real' VC 保留 segues 并成为每个 VC 的代表外什么都不做那些风投。然后,当我想在 VC 之间切换时,我首先关闭视图控制器并将目标的 segue 名称传递回集线器。然后,集线器可以立即执行该 segue,这让我到达了我想要的位置。我认为这可行,但似乎有点老套。
有谁知道有没有更好的方法可以做到这一点?谢谢!
你为什么不给每个人一个故事板标识符,然后用这个标识符抓住你需要的任何人:
UIViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"identifier"];
然后通过推送或模态呈现这个视图控制器
我有一个故事板,上面有 8 个 UIViewController
(并且还在增加)。我需要能够按需在任何一对之间移动。本质上,我想做的是模仿 UITabBarController
的功能。因为有这么多,我不能只使用 UITabBarController
(那会立即解决我的问题),所以我使用带有嵌入式 UITableView
的 UIPopoverController
来允许用户选择他们的目的地。
当然,我可以在故事板上创建 segues,但是要设置我当前需要的所有 segues,我将不得不为我现在拥有的视图控制器创建 56 个这样的 segues,并且可能随着事情的发展更多。
我的一个想法是创建一个 'hub' 视图控制器,它除了为每个 'real' VC 保留 segues 并成为每个 VC 的代表外什么都不做那些风投。然后,当我想在 VC 之间切换时,我首先关闭视图控制器并将目标的 segue 名称传递回集线器。然后,集线器可以立即执行该 segue,这让我到达了我想要的位置。我认为这可行,但似乎有点老套。
有谁知道有没有更好的方法可以做到这一点?谢谢!
你为什么不给每个人一个故事板标识符,然后用这个标识符抓住你需要的任何人:
UIViewController *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"identifier"];
然后通过推送或模态呈现这个视图控制器