[英]Adding new StoryBoard to UITabbarController
我的應用程序中有很多故事板。 以前我的應用程序不是基於UITabBar
的應用程序,但是現在我決定采用一種更UITabBar
方式。 現在,我要將情節UITabBarController
添加到UITabBarController
。 我打開了一個情節提要板並將其嵌入到UITabBarController中,但是現在我不知道如何將其他Storybord的第一個UIViewControllers
添加到我的Tabbar中。 我沒有任何tabBarController屬性等。
任何想法我如何可以將不同的故事板添加到一個UITabBarController
如果您不想在一個情節提要板上全部移動,則應參考選項卡欄控制器,並以編程方式添加每個情節提要的初始視圖控制器。
我想我的第一個問題/關注點是為什么您會有這么多故事板。 為什么不將所有視圖控制器都放在一個情節提要板上? 如果您將所有View Controller放在同一個情節提要板上,那么將它們連接到UITabBarController就是一件很簡單的事情-按住Control並從UITabBarController拖動一個所需的視圖控制器即可。
如果出於某種原因需要將視圖控制器分布在多個情節提要中,則應該能夠以以下方式以編程方式加載它們。 在UITabBarController的子類中:
- (void)viewDidLoad {
[super viewDidLoad];
UIStoryboard *storyboard1 = [UIStoryboard storyboardWithName:@"YourStoryBoardHNameHere1" bundle:nil];
UIViewController *vc1 = [storyboard1 instantiateViewControllerWithIdentifier:@"YourVCNameHere1"];
UIStoryboard *storyboard2 = [UIStoryboard storyboardWithName:@"YourStoryBoardHNameHere2" bundle:nil];
UIViewController *vc2 = [storyboard2 instantiateViewControllerWithIdentifier:@"YourVCNameHere2"];
self.viewControllers = @[vc1,vc2];
}
N8P的答案是Swift 3:使用多個情節提要板實現TabBarController。
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
let tabBar = UITabBarController()
tabBar.viewControllers = self.getArrayOfViewControllers()
self.customiseTabItems(tabBar: tabBar.tabBar)
// set tabBar as root
self.window?.rootViewController = tabBar
self.window?.makeKeyAndVisible()
return true
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.