qtstatusbar
qtstatusbar copied to clipboard
StatusBar for Qt allows setting the status bar color and theme on Android and iOS.
StatusBar for Qt
StatusBar for Qt allows setting the status bar color [1] and theme [2] on Android and iOS.
Android

- NOTE:
StatusBar::colorrequires Android 5.0 Lollipop (API level 21) or later. - NOTE:
StatusBar::themerequires Android 6.0 Marshmallow (API level 23) or later.
iOS

It is recommended to set the Qt.MaximizeUsingFullscreenGeometryHint
window flag, and take the difference between Screen.height and
Screen.desktopAvailableHeight into account. For example:
ApplicationWindow {
flags: Qt.Window | Qt.MaximizeUsingFullscreenGeometryHint
header: ToolBar {
topPadding: Qt.platform.os === "ios" ? Screen.height - Screen.desktopAvailableHeight : 0
}
}
- NOTE:
StatusBar::coloris not available on iOS.
Build
The easiest way to include StatusBar to a project is to copy over the
contents of the src folder and include statusbar.pri in the project
file (see example/statusbar.pro):
include(path/to/statusbar.pri)
Register
Registering the QML type in C++ (see example/main.cpp):
#include "statusbar.h"
int main(int argc, char* argv[])
{
QGuiApplication app(argc, argv);
qmlRegisterType<StatusBar>("StatusBar", 0, 1, "StatusBar"); // <==
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
return app.exec();
}
Usage
Example usage in QML (see example/main.qml):
import StatusBar 0.1
StatusBar {
theme: StatusBar.Dark // or Material.Dark
color: Material.color(Material.Indigo, Material.Shade700)
}