How to add tabbar items dynamically ipad - iphone

I am developing an application for iPad as a splitview template based with uitabbarcontroller in my application. I have 10 tabbar items and the first time, I only want to show 4 tabbar items. After I navigate another view I want to remove the 4 original tabbar items and add new 4 tabbar items with new viewcontroller . How is this possible?

You should not modify the previous tab bar - you should set the previous tab bar to hidden. There's a post already on how to do this here.
Then, add a new tab bar controller into the new View Controller that is contained inside of the original tab bar controller's view controller array.
Although it is possible, I wouldn't recommend this, as it isn't really good UI practice. Have you explored any alternatives?

Related

IOS Storyboard when to use navigation controllers?

Hi I'm new IOS and have been using the storyboard feature, I followed this tutorial which resulted in a working app. I'm slightly confused when to use a navigation controller. In the tutorial above, every tab had a navigation controller. Is this necessary?
I'm in the process of creating a new app and it seems to work whether I add a navigation controller or not to each tab (see pic).
I'm just curios what is the correct process?
Thanks.
As your app is using a UITabBarController each tab will display a separate 'branch' of views. If any of these 'branches' needs its views to be wrapped in navigation functionality (or simply display the navigation bar with a title etc) then you would add a 'UINavigationController` as the primary view controller for that tab, in between the tab bar controller and the first view controller you wish to display for that tab.
If you want a tab to simply display a view controller which doesn't need hierarchical navigation or a navigation bar then you wouldn't need to use a UINavigationController and can directly set your view controller as the controller for that tab.

Unhide tabbar when a new view is pushed

I have UITableViewController embeded in a UINavigationController in my app. When a row is selected it pushes a UITabBarController. So far so good. The problem is that some of the tabs I push more views but the tab bar gets hiden. I've tried setting hidesBottomBarWhenPushed = NO, but it doesn't work.
I'm using XCode 4 with storyboard
Any ideas?
I've had this problem in one of my apps (though it was in iOS 4.x, using nibs not storyboard).
What I did to solve it: You want to have the root controller for each tab (the one with tabitem, etc) be a navigation controller - and when you push new views onto this navstack, they will respect the top navigation bar and bottom tab bar (they may actually display two navbars, so you have to be careful, but generally this is the way to go.)
first of all you might want to take a look at this
viewController: The view controller that is pushed onto the stack. It
cannot be an instance of tab bar controller.
so pushing an instance of tab bar controller is not recommended. There's a good reference there that might accomplish the task you wanted ill just provide the link here

Add a navigation control to a single tab in xcode 4

I am fairly new to programming with objective-c and xcode 4 and I am trying to make a tab bar application and add a navigation control to a specific tab.
I am able to add a navigation controller inside the tab bar controller, by clicking dragging the navigation controller into the tab bar controller of the MainWindow.xib window. However, by doing this and linking the class and nib to the corresponding view controller and view, respectively, this adds a new tab, which I don't want (as I want a specific/already in existence tab to also contain the nav controller).
Thanks.
I'm not sure what you exactly want to do, but as my understanding, you want navigation controller under tabbar item that is already existed in the tabbar controller. It's not good practice to do it in that way. Rather than that, try add navigation controller first and then add ViewController inside of it (which makes your life easier). Usually Navigation Controller is root of ViewController, but not vice verse. Hope this help.

Problem in adding more than 5 button in tab bar controller in iphone

Hello everybody i need your help.
I am making a tab bar based application in iphone. i have more than 5 button to show in tab bar. when i did it, five button displayed fifth button is more..... but when i clicked on more then more button came in a table view not in tab bar.
That's how it works. From the documentation (http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/TabBarControllers/TabBarControllers.html%23//apple_ref/doc/uid/TP40007457-CH102-SW2):
If you add more than five items to the
viewControllers property, the tab bar
controller automatically inserts a
special view controller (called the
More view controller) to handle the
display of the additional items. The
More view controller provides a custom
interface that lists the additional
view controllers in a table, which can
expand to accommodate any number of
view controllers. The More view
controller cannot be customized or
selected and does not appear in any of
the view controller lists managed by
the tab bar controller. For the most
part, it appears automatically when it
is needed and is separate from your
custom content. You can get a
reference to it though by accessing
the moreNavigationController property
of UITabBarController.
That is intended behavior and not an issue, if you read the viewController Programming guide you could have seen that right away: http://developer.apple.com/library/ios/#featuredarticles/ViewControllerPGforiPhoneOS/Introduction/Introduction.html#//apple_ref/doc/uid/TP40007457

iphone sdk: How do i hide the tabBar in my UITabBarController?

My application consists out of a tabbarcontroller and inside i got multiple navigationControllers. Now i want to hide the bottom bar of the tabbarcontroller from the start because the buttons on the bottom bar lead to features inside the application which are just not ready yet so i dont't want the user to see them. How do i do this?
Thanks in advance!
A couple of options:
Set hidesBottomBarWhenPushed=YES on one of the controllers in your navigation controller. I'm not sure if this works on the root view controller of a navigation controller.
Hide the tab bar items by changing UITabBarController.viewControllers. I'm not sure if it lets you have a tab bar with only one tab, but it ought to.
Set the tab bar controller's delegate (see UITabBarControllerDelegate). In – tabBarController:shouldSelectViewController:, return NO if it hasn't been implemented yet.