Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Native Development

Reply
Highlighted
Developer
Posts: 92
Registered: ‎08-01-2013
My Device: Z10, Q5, Q10
My Carrier: Vodaphone
Accepted Solution

Need TabbedPane to be visible at all times.

Hi all, 

 

I have 4 tabs in my application. i have set each one with a different navigation pane.

when i push a page on any navigation pane, the page occupies the entire screen.

but i want my tabs to be visible AT ALL TIMES, irrespective how deep the user has navigated into one tab.

 

is this possible?

if no, could any body suggest me some work around for the same?

 

Thanks and Regards.

 

Developer
Posts: 1,524
Registered: ‎12-18-2012
My Device: Z30, Z10 LE, DevAlpha C, PlayBook

Re: Need TabbedPane to be visible at all times.

Hi,
That's not possible, but if you don't need peek functionality, an option is creating multiple containers on the same page and hiding one of them while showing the other.

Andrey Fidrya, @zmeyc on twitter
Developer
Posts: 6,152
Registered: ‎07-05-2012
My Device: Playbook, Dev Alpha C, Z10 LE, Z30
My Carrier: Orange

Re: Need TabbedPane to be visible at all times.

Can you clarify your question a bit more.

 

Are you saying you want the Tabs to remain on the left no matter how far you navigate in, this should happen anyway?

 

Or more likely you are asking to keep the ActionItems for each Tab, in which case are they the same for each Page?

 

Or are you saying you want the Pages (i.e. 4 navigationPanes) to remain visible at all times, kind of superimposed one on top of another?

 

Thanks, as you can see there are so many ways to interpret what you have written.

 

 


If you've been helped click on Like Button, if you've been saved buy the app. Smiley Happy

Developer of stokLocker, Sympatico and Super Sentences.
Developer
Posts: 92
Registered: ‎08-01-2013
My Device: Z10, Q5, Q10
My Carrier: Vodaphone

Re: Need TabbedPane to be visible at all times.

I need to have single TabbedPane with 4 tabs always visible to user. Each tab should contain seperate NavigationPane so that it can handle the stack for each tab independantly. 

 

and when i push page on any tab, the page should not occupy entire screen, it shoud show all the 4 tabs to the user so that the user can switch bwteen the tabs.

 

 

Developer
Posts: 92
Registered: ‎08-01-2013
My Device: Z10, Q5, Q10
My Carrier: Vodaphone

Re: Need TabbedPane to be visible at all times.

this is my POC :

 


TabbedPane* _tpTabbedPane ;

_bHome1 = Button::create().text("next from home") ;
_bCall1 = Button::create().text("next from call") ;
_bSearch1 = Button::create().text("next from search") ;
_bLocation1 = Button::create().text("next from location") ;

Page* _pMain = Page::create().content(Label::create().text("abhay"));

_pHome1 = Page::create().content(_bHome1);
_pCall1 = Page::create().content(_bCall1);
_pSearch1 = Page::create().content(_bSearch1);
_pLocation1 = Page::create().content(_bLocation1);

_npNavPane1 = NavigationPane::create().add(_pHome1).backButtons(false) ;
_npNavPane2 = NavigationPane::create().add(_pSearch1).backButtons(false) ;
_npNavPane3 = NavigationPane::create().add(_pCall1).backButtons(false) ;
_npNavPane4 = NavigationPane::create().add(_pLocation1).backButtons(false) ;

_tHome = Tab::create().title("home").content(_npNavPane1) ;
_tSearch = Tab::create().title("search").content(_npNavPane2) ;
_tCall = Tab::create().title("call").content(_npNavPane3) ;
_tLocation = Tab::create().title("location").content(_npNavPane4) ;

_tpTabbedPane = TabbedPane::create()
.showTabsOnActionBar(true)
.add(_tHome)
.add(_tSearch)
.add(_tCall)
.add(_tLocation) ;


QObject::connect(_bHome1, SIGNAL(clicked()),
this, SLOT(onHomeButtonClicked()));

QObject::connect(_bCall1, SIGNAL(clicked()),
this, SLOT(onCallButtonClicked()));

QObject::connect(_bSearch1, SIGNAL(clicked()),
this, SLOT(onSearchButtonClicked()));

QObject::connect(_bLocation1, SIGNAL(clicked()),
this, SLOT(onLocButtonClicked()));

app->setScene(_tpTabbedPane) ;

 

these are the slots:

 

void ApplicationUI:Smiley SurprisednHomeButtonClicked() {
_npNavPane1->push(Page::create().content(Label::create().text("ON Homee again"))) ;
}

void ApplicationUI:Smiley SurprisednCallButtonClicked() {
_npNavPane3->push(Page::create().content(Label::create().text("ON CalLLL"))) ;
}

void ApplicationUI:Smiley SurprisednSearchButtonClicked() {
_npNavPane2->push(Page::create().content(Label::create().text("ON searchhhh nav paneee"))) ;
}

void ApplicationUI:Smiley SurprisednLocButtonClicked() {
_npNavPane4->push(Page::create().content(Label::create().text("ON LoC"))) ;
}

 

so when i push page on _npNavPane1 suppose,

all the tabs are hidden, and the new page occupies the entire screen.

 

What i want is, the new page should be pushed in the nav pane, but the tabs below, should still be visible!

 

Hope this makes you understand my problem!

Developer
Posts: 6,152
Registered: ‎07-05-2012
My Device: Playbook, Dev Alpha C, Z10 LE, Z30
My Carrier: Orange

Re: Need TabbedPane to be visible at all times.

Sorry to be dense but are you just asking to keep the left hand menu visible at all times?

If you've been helped click on Like Button, if you've been saved buy the app. Smiley Happy

Developer of stokLocker, Sympatico and Super Sentences.
Developer
Posts: 6,152
Registered: ‎07-05-2012
My Device: Playbook, Dev Alpha C, Z10 LE, Z30
My Carrier: Orange

Re: Need TabbedPane to be visible at all times.

If it is just the ActionItems from the navigationPane that you want to keep then you can programmatically show/hide those by putting them at the Tab level.
i.e. remove them from the navigationPane, this would make your UI logic slightly more complex but not unreasonably so.

If you've been helped click on Like Button, if you've been saved buy the app. Smiley Happy

Developer of stokLocker, Sympatico and Super Sentences.
Developer
Posts: 92
Registered: ‎08-01-2013
My Device: Z10, Q5, Q10
My Carrier: Vodaphone

Re: Need TabbedPane to be visible at all times.

yes! left hand menu you can call it if

 

_tpTabbedPane = TabbedPane::create()
.showTabsOnActionBar(false)
.add(_tHome)
.add(_tSearch)
.add(_tCall)
.add(_tLocation) ;

 

but what i m using is,

 

_tpTabbedPane = TabbedPane::create()
.showTabsOnActionBar(true)
.add(_tHome)
.add(_tSearch)
.add(_tCall)
.add(_tLocation) ;

 

so yes! i want the tabs/left menu to be visible at all times irrespective of on which tab the user is., or the depth of the tab he is in.

Developer
Posts: 92
Registered: ‎08-01-2013
My Device: Z10, Q5, Q10
My Carrier: Vodaphone

Re: Need TabbedPane to be visible at all times.

i'm sorry, i do not get you! Smiley Sad

Developer
Posts: 6,152
Registered: ‎07-05-2012
My Device: Playbook, Dev Alpha C, Z10 LE, Z30
My Carrier: Orange

Re: Need TabbedPane to be visible at all times.

Same here I'm really struggling to understand what you are trying to do. Smiley Happy

I'm pretty sure it's possible whatever it is you are asking but I'm just not getting exactly what it is you want yet.


If you've been helped click on Like Button, if you've been saved buy the app. Smiley Happy

Developer of stokLocker, Sympatico and Super Sentences.