The Momentics IDE’s New BlackBerry
Project wizard is a great starting place for selecting your application
scaffolding. You have the choice between four project templates, which
basically cover most, if not all, of your needs in designing Cascades
applications:
- Standard empty project: This is the template you have been using until now for designing your applications. It provides you a single Page where you can add your own Cascades controls.
- List view: Creates an application where the main UI element is a ListView displaying a list of items. The data for the list items is provided by an instance of a DataModel.
- Tabbed pane: Creates an application where the user can switch between Tabs. Each Tab contains an instance of an AbstractPane (in practice, you can only add a Page or a NavigationPane to the Tab).
- Navigation pane: Creates an application that uses a NavigationPane to display screens. Navigation is triggered when the user selects an action, which can be contextual or located on the Action bar (I will tell you more about actions and action bars in a moment).
Note that both the List view and the
Navigation pane templates use navigation, which is a way to transition
from one screen to another, in order to implement their functionality.
Let us now have a look at the main.qml
files generated by each template (I am going to omit the standard empty
project because you are already quite familiar with it).
Tabbed Pane Template
The main.qml file generated by the Tabbed Pane template is given in Listing 1.
Listing 1. Tabbed Pane Template, main.qml
import bb.cascades 1.0 TabbedPane { showTabsOnActionBar: true Tab { //First tab // Localized text with the dynamic translation and locale updates support title: qsTr("Tab 1") + Retranslate.onLocaleOrLanguageChanged Page { Container { Label { text: qsTr("First tab") + Retranslate.onLocaleOrLanguageChanged } } } } //End of first tab Tab { //Second tab title: qsTr("Tab 2") + Retranslate.onLocaleOrLanguageChanged Page { Container { Label { text: qsTr("Second tab") + Retranslate.onLocaleOrLanguageChanged } } } } //End of second tab }
A tabbed pane is an extremely convenient way
of organizing your application in multiples screens. Each Tab can
contain an instance of an AbstractPane (in other words, you can use a Page or a NavigationPane as a child control). Figure 1 illustrates a resulting UI where the second tab has been selected.
You can specify how a TabbedPane will appear on the Action bar by setting its ShowTabsOnActionBar
property. If you change the property to false (or if you don’t set it
at all), the resulting layout will be identical to Figure 2.
By touching the Tab1 icon, you will reveal the
other tabs. Obviously, this layout is preferable if you have lots of
tabs in your application.


No comments:
Post a Comment