开发者

How to hide a tabbar at the app startup?

开发者 https://www.devze.com 2022-12-25 08:12 出处:网络
So, I want my app starts with a UIViewController(without seeing a tabbar), and then enter a UITableView with navigationbar and tabbar.the problem is that the Tabbar is visible开发者_开发百科 at the ap

So, I want my app starts with a UIViewController(without seeing a tabbar), and then enter a UITableView with navigationbar and tabbar. the problem is that the Tabbar is visible开发者_开发百科 at the app starts up, anyone can help on this will be very appreciated...


I think you should either send -presentModalViewController:animated: to your main UIViewController with the tab bar controller as an argument or just do this:

[myWindow addSubview: myTabBarController.view];


Make your app a navigation based application (rather than a tab bar based one) then add a tab bar on the UITableView.

There is help for adding the UITabBar here

I do it like this : in this case drawing a table view and map view (From the Locati application)

tabBarController = [[UITabBarController alloc] init];          // creates your tab bar so you can add everything else to it

searchTableViewController = [[SearchTableViewController alloc] init];               // creates your table view - this should be a UIViewController with a table view in it, or UITableViewController
UINavigationController *searchTableNavController = [[[UINavigationController alloc] initWithRootViewController:searchTableViewController] autorelease];
[searchTableViewController release];                                                              // creates your table view's navigation controller, then adds the view controller you made. Note I then let go of the view controller as the navigation controller now holds onto it 

searchMapViewController = [[SearchMapViewController alloc] init];   
UINavigationController *mapTableNavController = [[[UINavigationController alloc] initWithRootViewController:searchMapViewController] autorelease];
[searchMapViewController release];                                                    // does exactly the same as the first round, but for your second tab at the bottom of the bar.

tabBarController.viewControllers = [NSArray arrayWithObjects:searchTableNavController, mapTableNavController,  nil]; //add both of your navigation controllers to the tab bar. You can put as many controllers on as you like

I found this pattern a long time ago. Sorry that I can't point at the original. YOu then need to add the tabbarcontoller to the relevant view ([...view addSubView:tabBarController];) possibly setting frame first.

0

精彩评论

暂无评论...
验证码 换一张
取 消