Проблемы с Pagestack.push()
Я относительно новичок в программировании OS для Sailfish и пока использую SiliconFlickable для открытия новой страницы в зависимости от опции, предоставленной пользователем: вывод нескольких экранов
Я вижу вывод нескольких экранов и не могу найти что-нибудь, касающееся помощи в документации по qt. Мой код:
ApplicationWindow
{
id: mainPage
SilicaFlickable{
anchors.fill: parent
PullDownMenu {
id:pullDownMenu
MenuItem{
id: decimalTo
text: qsTr("Decimal")
onClicked: pageStack.push(Qt.resolvedUrl("./pages/Decimal.qml"))
}
MenuItem{
id:binaryTo
text: qsTr("Binary")
onClicked: pageStack.push(Qt.resolvedUrl("./pages/Binary.qml"))
}
}
/*cover: Qt.resolvedUrl("cover/CoverPage.qml")
allowedOrientations: defaultAllowedOrientations*/
Column{
anchors.fill: parent
anchors.margins: Theme.paddingLarge
spacing: Theme.paddingLarge
PageHeader{
title: "Number system convertor"
}
Label
{
width: parent.width
anchors.leftMargin: Theme.paddingLarge
anchors.rightMargin: Theme.paddingLarge
horizontalAlignment: Text.AlignHCenter
wrapMode: Text.WrapAtWordBoundaryOrAnywhere
textFormat: Text.RichText
text: "Please select the input number system from the flickable menu. Pull down to see the options."
}
}
}
}
Десятичная или двоичная страница, которая открывается, в настоящее время является просто по умолчанию firstpage.qml и secondpage.qml, которые генерируются при создании нового проекта. Любая помощь будет оценена. PS: я перезагружаю кодирование после долгого времени, и это мое первое приложение.
1 ответ
Вы должны попытаться обернуть внутреннюю часть ApplicationWindow
в объекте Page:
ApplicationWindow {
Page {
id: mainPage
SilicaFlickable {
...
}
}
}
Но обычно вы делаете что-то вроде
// myApplication.qml
import QtQuick 2.0
import Sailfish.Silica 1.0
ApplicationWindow {
id: mainWindow
initialPage: Qt.resolvedUrl("MainPage.qml")
}
// MainPage.qml
import QtQuick 2.0
import Sailfish.Silica 1.0
Page {
id: mainPage
....
}