Explaining pages
Vårt program
I föregående handledning, lyckades vi ställa in, bygga och kompilera vårt första Kirigami-program. Med grunderna på plats, kan vi börja vår resa mot att skapa ett program med fullständig funktion.
De här handledningarna fokuserar på att skapa ett program som låter användaren se hur många dagar som är kvar till en händelse de väljer. Det betyder inte att du inte kan avvika och försöka skapa något eget. Säkerställ bara att du noggrant observerar hur saker och ting fungerar först, så att du kan justera när saker är annorlunda i din egen kod. Vi rekommenderar också att to tar en titt på Kirigami galleri, som tillhandahåller ett antal användbara exempel på användargränssnitt och enkel åtkomst till all kod.
I det här avsnittet fokuserar vi på sidor, ett av de viktigaste strukturelementen i alla Kirigami-program.
Sidor
Kirigami-program är typiskt organiserade i sidor . De är de olika "skärmarna" i ett program. Du bör ha sidor tillägnade till specifika aspekter i programmets interaktion, och för att göra saker och ting lättare kan du skapa olika QML-filer, en för varje sida.
Sidor organiseras i en sidstapel där de kan läggas till eller tas bort. På en telefon visas bara den översta sidan, medan på en större skärm (skrivbordsdator eller surfplatta) kan flera sidor visas intill varandra om så önskas.
Anmärkning
KDE har Human Interface Guidelines (HIG) som går in i detalj om hur man bäst utformar ett program. Riktlinjerna hjälper till att säkerställa att programmet förblir användbart, konsistent och estetiskt tilltalande.
Kirigami.Page ärver från Controls.Page , och därmed kan du också använda den senares egenskaper.
Låt oss gå tillbaka till filen main.qml
vi skapade i föregående handledning:
|
|
Vi gör så att vårt program startar på vår Kirigami.Page . Allt vi har inkluderat på den är en beteckning som innehåller "Hello World", men vi kommer att piffa upp den lite grand.
Idén bakom vårt program är att vi ska kunna visa ett antal nedräknare för användaren. Problemet med en normal Kirigami.Page är att den har en fast vertikal storlek, men var inte orolig: Kirigami stöder också rullningsbara sidor. Kirigami.ScrollablePage kommer att vara vår huvudsida nu.
Varning
Om du har fortsatt förbi handledningen, kanske du har märkt att det också finns saker som en ScrollView som du kan använda för att innehålla dina komponenter. Placera dock INTE enScrollView
inne i en ScrollablePage
eftersom det kan orsaka problem. Underliggande objekt i en ScrollablePage
är funktionellt redan i en ScrollView
.
|
|
Kirigami-sidor har också snygga titlar placerade inne i verktygsraden, som snabbt anger för användaren vilken sida de är på. Allt vi behöver göra är att ställa in en sidtitel genom att använda egenskapen title
i
Kirigami.ScrollablePage
. Här använder vi en av i18nc()
funktionerna som vi utforskade i vår förra handledning i detta syfte.
Anmärkning
Du skulle också kunna välja att definiera sidan i ett eget QML-dokument. För att göra det, skulle du skapa den nya QML-filen, exempelvis "StartPage.qml", lägga till den i filen resources.qrc
, och ställa in fönstrets första sida för att läsa in den, på följande sätt:
pageStack.initialPage: Qt.resolvedUrl("StartPage.qml")
pageStack.initialPage
ställer in den ursprungliga sidan i sidstapeln, och
Qt.resolvedUrl
konverterar den relativa webbadressen i QML-filen till en absolut.
Det finns ytterligare information om alternativa sidstrukturer i vår Kirigami-dokumentation.