如何寫一個覆蓋狀態列的全屏的QML應用
阿新 • • 發佈:2019-02-13
從上面的兩張圖中,我們可以看出來一些差別.左邊的一個圖裡,還是有手機狀態的顯示.究其原因,還是因為MainView不讓我們完全覆蓋所有的區域.那麼我們怎麼實現一個完全的全屏應用呢?
在我們的下面的例子中,我們完全拋棄MainView.我們選用Window來完成我們的介面:
Main.qml
import QtQuick 2.4 import Ubuntu.Components 1.3 import QtQuick.Window 2.2 //Rectangle { // width: Screen.width // height: Screen.height // color:"red" //} Window { id: main width: Screen.width height: Screen.height // special flag only supported by Unity8/MIR so far that hides the shell's // top panel in Staged mode flags: Qt.Window | 0x00800000 Image { anchors.fill: parent source: "images/pic.jpg" } Label { anchors.centerIn: parent text: "This a full screen app" fontSize: "x-large" } Component.onCompleted: { console.log("visibility: " + main.visibility ) console.log("width: " + Screen.width + " height: " + Screen.height ) } }
在上面的程式碼中,我們同時也設定如下的flags:
flags: Qt.Window | 0x00800000
這樣我們就可以完全實現一個全屏的應用了.