MainView QML Type
MainView is the root Item that should be used for all applications. More...
Import Statement: | import Lomiri.Components 1.3 |
Properties
- actionManager : ActionManager
- actions : list<Action>
- active : bool
- anchorToKeyboard : bool
- applicationName : string
- backgroundColor : color
- footerColor : color
- headerColor : color
Detailed Description
The simplest way to use a MainView is to include a single Page object inside the MainView:
import QtQuick 2.4 import Lomiri.Components 1.3 MainView { width: units.gu(48) height: units.gu(60) Page { header: PageHeader { id: pageHeader title: "Simple page" } Button { anchors { horizontalCenter: parent.horizontalCenter top: pageHeader.bottom topMargin: units.gu(5) } width: units.gu(15) text: "Push me" onClicked: print("Click!") } } }
It is not required to set the anchors of the Page as it will automatically fill its parent.
Do not include multiple Pages directly inside the MainView, but use AdaptivePageLayout inside MainView to navigate between several Pages.
If the Page inside the MainView includes a Flickable, set the flickable property of the PageHeader to automatically hide and show the header when the user scrolls up or down:
import QtQuick 2.4 import Lomiri.Components 1.3 MainView { width: units.gu(48) height: units.gu(60) Page { header: PageHeader { title: "Page with Flickable" flickable: myFlickable } Flickable { id: myFlickable anchors.fill: parent contentHeight: column.height Column { id: column Repeater { model: 100 Label { text: "line "+index } } } } } }
The same header behavior is automatic when using a ListView instead of a Flickable in the above example.
The examples above show how to include a single Page inside a MainView, but more advanced application structures are possible using AdaptivePageLayout.
Property Documentation
[read-only] actionManager : ActionManager |
The ActionManager that supervises the global and local ActionContexts. The actions property should be used preferably since it covers most use cases. The ActionManager is accessible to have a more refined control over the actions, e.g. if one wants to add/remove actions dynamically, create specific action contexts, etc.
anchorToKeyboard : bool |
The property holds if the application should automatically resize the contents when the input method appears
The default value is false.
applicationName : string |
The property holds the application's name, which must be the same as the desktop file's name. The name also sets the name of the QCoreApplication and defaults for data and cache folders that work on the desktop and under confinement, as well as the default gettext domain. C++ code that writes files may use QStandardPaths::writableLocation with QStandardPaths::DataLocation or QStandardPaths::CacheLocation.
backgroundColor : color |
Color of the background.
The background is usually a single color. However if headerColor or footerColor are set then a gradient of colors will be drawn.
For example, in order for the MainView to draw a color gradient beneath the content:
import QtQuick 2.4 import Lomiri.Components 1.2 MainView { width: units.gu(40) height: units.gu(60) headerColor: "#343C60" backgroundColor: "#6A69A2" footerColor: "#8896D5" }
See also footerColor and headerColor.
footerColor : color |
Color of the footer's background.
See also backgroundColor and headerColor.
headerColor : color |
Color of the header's background.
See also backgroundColor and footerColor.