so dont use resources. In DoActivate() and DoDeactivate()methods of the view construct tabs and display them. Using AppUi()->StatusPane() you get access to the status pane. It has method ControlL(), which returns you a CCoeControl derived object. The type of object you pass as parameter TUid (we pass EEikStatusPaneUidNavi). It returns back instance of CAknNavigationControlContainer class, which is something like container for placing a control to the navigantion pane (tabs, text,...). The controls are created by calling Create...() method of this container, where use instead of '... ' spoecified control name. So we will call CreateTabGroupL(), whcih creates a class CAknNavigationDecorator for holding a tabs (or any other control created on navigation pane). FINALLY we can access this control by calling DecoratedControl() method of decorator:
The only thing we must do to display the navi tabs is calling CAknNavigationControlContainer::PushL(). The visibility of navi tabs is made by calling the MakeVisible() function of decorator. Deleting decorator is all you must done to free all allocated memory.
When creating a decorator in one view the question should be hoiw access it in the second view. You can pass the decorator oas parameter or get poineter to it by calling:
The only difference is usage of resources R_TAB_GROUP of TAB_GROUP type.
The last one thing is about calling PushL() and Pop() methods of container. When you have views with tabs and you switch to another group of views wint other tabs you push new tabs to show them and when leaving you pop them back to show previous group of tabs: