Razvoj aplikacij za Ubuntu [QML]

Nameščanje Ubuntu SDK

Ubuntu SDK je IDE, ki nam ponuja orodja, na katerih moramo razviti aplikacijo QTCreator.

sudo apt-get install ubuntu-sdk

Če ga enkrat namestimo, ga odpremo in prikazal se bo:

SDK

dokumentacijo

Veliko informacij lahko najdemo v web Razvijalci Ubuntu, vadnice, api ...

Znotraj istega Ubuntu SDK lahko najdemo razdelke, iz katerih se lahko učimo, si ogledujemo kodo ... Kategorije so Pomoč, Wiki, Osnovne aplikacije in API.

V API-ju lahko najdemo vse Ubuntu api.Components 0.1, ki so komponente, ki jih bomo uporabili za ustvarjanje aplikacije.

V Core Apps nam prikaže splet ubuntu-telefon-coreapps lansirne ploščice, kjer lahko najdemo kodo več aplikacij. V Pomoči si lahko ogledamo nekaj priročnikov, ki nam bodo pomagali pri začetku.

Web kjer lahko najdemo vadnico za razčlenitev json z qml in javascript.

Ustvarjanje aplikacije (odjemalec)

Za primer bomo ustvarili stranko, o kateri sem že malo govoril tukaj.

Ustvarimo nov projekt: Datoteka -> Nova datoteka ali projekt

sdk_create

In izberemo Simple Touch UI. V času, ko smo ustvarili svoj projekt, bo videti strukturiran, z nekaterimi datotekami in nekaterimi mapami, če ga zaženemo zdaj, bomo dobili primerno aplikacijo, ki je ne bomo uporabili ali pa bomo delno uporabili kot osnovno točko za ustvarjanje našega .

  Zajem iz 2014-04-06 17:10:44

Če zdaj dodamo listView z modelom, ki vzame podatke Jsona iz stripov, kot je naslov, bomo imeli:

Zajem iz 2014-04-06 18:07:59

Ustvarimo datoteko z imenom data.js, da to datoteko z desno miškino tipko kliknemo na projekt Dodaj novo -> Qt -> JS datoteka:

Zajem iz 2014-04-06 18:07:00

Vidimo lahko, kako razčlenimo json, tako da vzamemo samo polje z rezultati, kjer bomo za vsak rezultat dobili njegov naslov.

console.log je kot tiskanje za konzolo.

Končno v marvel.qml vnesemo zgoraj, kje je uvoz

import "data.js" as Data

Rezultat: Zajem iz 2014-04-06 17:57:16

Predstavljajmo si, da želimo svoji aplikaciji dati boljši videz, na primer namesto da bi prikazali samo naslov, ki prikazuje sliko. in jih lahko premikamo vodoravno, naredimo to:

Lastnost orientacije dodamo v pogled seznama

orientation: ListView.Horizontal

Besedilo spremenimo tudi za sliko:

Image {
width: 200; height: 150
fillMode: Image.PreserveAspectFit
source: thumbnail+".jpg"
}

In v data.js dodamo sličico

marvelModel.append({id: i.id, title: i.title, thumbnail: i.thumbnail.path});

Rezultat lahko vidimo:

Zajem iz 2014-04-06 18:29:44

No, zdaj bi lahko opravili številne funkcije, ki jih mora opraviti naša aplikacija, na primer klik na sliko nam bo pokazal informacije, iskalnik znakov ... Primer pa bomo pustili tukaj.

embalaža

Končno moramo samo še ustvariti naš paket, pojdimo na Packaging:

sdk_package

Vidimo, da moramo izpolniti nekatera polja. Kot na primer, če uporabljate internet ..., ko imamo vse popolno, damo paket za ustvarjanje, ki bo ustvaril datoteko .click, da bomo lahko namestili aplikacijo.

Zaključek (GTK3 ali QML)

Glede videza mi je gtk zelo všeč, vendar stopnja "modifikacije" tega pušča veliko zaželenega, po drugi strani pa lahko z qml uporabniški vmesnik veliko prilagodite drugim, ima tudi komponente (namizne komponente) ki pustijo videz, kot da bi bil gtk.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.

  1.   r @ y je dejal

    Samo pojasnilo: Ubuntu SDK NI IDE niti ne temelji na QtCreatorju, ampak že njegovo ime označuje razvojni komplet, ki ga je mogoče integrirati v QtCreator.

  2.   cuelebre je dejal

    Danes sem začel slediti tej in ostalim trem vadnicam, toda ko poskusim projekt zagnati, izstopim iz aplikacije, ali mi lahko poveste, ali obstaja kakšna težava?