CAMOBAP
CAMOBAP

Reputation: 5657

WindowsPhone equivalent of "UITabController with UINaviagtionController per each Tab" in iOS

I have iOS application with UITabBarController that contains UINaviagtionController for each Tab, like on the picture below. My iOS app root controller

I also want to port my application to WindowsPhone (>=7.5).

My question is: Which UI components/services can I use to create the navigation flow like in my iOS app?

Update

  1. About UITabController you can think like about tabs in windows enter image description here

  2. The hierarchy of controllers that painted on the picture above mean that each tab in UITabController will have own UINavigationController (in the WP terms this is NavigationService). So if you will use the navigation on one tab this will not affect to navigation on other tabs.

But as far as I know by default WP application have only one instance of NavigationService.

So actually my question is relevant to a question: Can WP application use more than one NavigationService?

Upvotes: 1

Views: 289

Answers (1)

Toni Petrina
Toni Petrina

Reputation: 7112

Windows Phone uses slightly different UI concepts. Instead of using Tab control you should use either Panorama or Pivot control. The former is used whenever you want to display completely disparate elements on a single large page, the latter is for displaying multiple views of the same data. This means that Panorama is used for displaying multiple views of different data.

Whenever you navigate from one page to another using NavigationService, it will keep the current stack. It serves as a history for the hardware Back button (unlike software button in iOS).

This means that you hold only one sequence of previously open pages in your application that can be navigated backwards, there cannot be any "side" stacks since they make no sense.

So if you were to navigate from one pivot item to some other application page, you would use the one and only NavigationService. Therefore each pivot/panorama item uses the same stack as the rest of the application.

If some things are still unclear, feel free to ask here.

Upvotes: 1

Related Questions