Vítejte u čtvrtého dílu kurzu programování pro mobilní telefony.
Minulé díly byly takové zahřívací, protože od teď budeme probírat
jednotlivé prvky podrobněji. Nejdříve popíši prvek (např. Display)
a jeho funkce, potom konstruktor a metody, máte se na co
těšit.
Všechny třídy pro tvorbu grafického uživatelského rozhraní jsou v balíku
javax.microedition.lcdui a javax.microedition.lcdui.game.
Většina poznámek jsou více nebo méně překladem
dokumentace, ale u některých jsem použil vlastní vysvětlení,
nebo trochu upravil překlad. Proto pokud vám něco nebude zdát jasné,
stačí si prohlédnout dokumentaci API, ale snažil jsem se poznámky
udělat co nejlepší, aby vše bylo jasné.
balík javax.microedition.lcdui |
Rozhraní |
Poznámky |
Choice |
definuje API pro komponenty GUI implementující výběr z počtu předem
daných možností. |
CommandListener |
využívá se pro třídy které chtějí zachytávat vysokoúrovňové události |
ItemCommandListener |
posluchač pro upozornění na událost která vznikla na objektu typu Item |
ItemStateListener |
používá se pro zjištění každé změny v objektu typu Form |
|
|
|
|
Třídy |
Poznámky |
Alert |
zobrazuje různé zpravy na určitoý čas |
AlertType |
obsahuje typ prvku Alert |
Canvas |
základní třída při použití nízkoúrovňového api |
ChoiceGroup |
skupina elementů ze které lze jednotlivé elemety označit (vybrat) |
Command |
třída zapouzdřující různé věci o akci (např. stisknutí tlačítka) |
CustomItem |
základová třída používající se k vytvoření svého vlastního prvku GUI |
DateField |
prvek pro zobrazení data |
Display |
třída odkazující na plochu displeje, kterou může midlet využít |
Displayable |
základová třída pro všechny zobrazitelné prvky |
Font |
obsahuje parametry fontů |
Form |
kontejnerová komponenta do které se vkládají všechny vysokoúrovňové prvky |
Gauge |
třída reprezentuje posuvníky a ukazatele (hlasitost, zbývající čas...) |
Graphics |
třída používající se k přímému kreslení různých geometrických tvarů |
Image |
obsahuje data obrázku, který reprezentuje |
ImageItem |
potomek Item obsahující obrázek a doplňující text |
Item |
základová třída pro prvky, které se dají vložit do objektu typu
Form |
List |
obrazovka obsahující seznam voleb |
Screen |
obecná základová třída všech vysokoúrovňových prvků |
Spacer |
prázndý neinteraktivní objekt typu Item který má nastavitelnou výšku a šířku,
používá se pro vytvoření prázdného místa |
StringItem |
potomek Item obsahující text |
TextBox |
potomek Screen, do kterého lze psát text |
TextField |
zobrazí výzvu s polem do kterého lze psát |
Ticker |
zobrazuje posunující se text |
Základem zobrazení aplikací je třída Display. Třída Display reprezentuje
logickou obrazovku zařízení. Ve všech našich programech jsme ji využívali,
protože bez ní to nejde. Vždy jsme pomocí statické metody getDisplay()
získali odkaz na objekt třídy Display, který jsme používali pro zobrazení.
Volat by se metoda getDisplay() měla až v metodě startApp(), ne dříve
například v konstruktoru aplikace.
Třída Display |
Konstanty |
Poznámky |
static int ALERT |
imageType obrázek pro použití v třídě Alert |
static int CHOICE_GROUP_ELEMENT |
imageType obrázek pro použití v třídě ChoiceGroup |
static int COLOR_BACKGROUND |
učuje kterou barvu chceme vrátit při použití metody getColor() |
static int COLOR_BORDER |
učuje kterou barvu chceme vrátit při použití metody getColor() |
static int COLOR_FOREGROUND |
učuje kterou barvu chceme vrátit při použití metody getColor() |
static int COLOR_HIGHLIGHTED_BACKGROUND |
učuje kterou barvu chceme vrátit při použití metody getColor() |
static int COLOR_HIGHLIGHTED_BORDER |
učuje kterou barvu chceme vrátit při použití metody getColor() |
static int COLOR_HIGHLIGHTED_FOREGROUND |
učuje kterou barvu chceme vrátit při použití metody getColor() |
static int LIST_ELEMENT |
imageType obrázek pro použití v třídě List |
|
|
|
|
Konstruktory |
Poznámky |
nemá veřejné konstruktory |
|
|
|
|
|
Metody |
Poznámky |
void callSerially(Runnable r) |
způsobí, že se nejprve dokončí metoda repaint() a až potom metoda run() objetku
Runnable, který předáme jako parametr |
boolean flashBacklight(int duration) |
rozsvěcí a zhasíná podvícení displeje zařízení na určitou dobu, pokud
zařízení midletu nedovolý podsvícení ovládat vrací false, jinak true |
int getBestImageHeight(int imageType) |
vrací nejlepší výšku pro obrázek typu který specifikujeme (např. ALERT) |
int getBestImageWidth(int imageType) |
vrací nejlepší šířku pro obrázek typu který specifikujeme (např. ALERT) |
int getBorderStyle(boolean highlighted) |
vrací typ okrajů buď, Graphics.DOTTED nebo Graphics.SOLID |
int getColor(int colorSpecifier) |
vrací barvu prvků, které zadáme (např. COLOR_BORDER) |
Displayable getCurrent() |
vrací aktuální objekt typu Displayable |
static Display getDisplay(MIDlet m) |
vrací odkaz na objekt typu Display, dislpej aktuální pro tento midlet |
boolean isColor() |
pokud je displej barevný, vrátí true, jinak false |
int numAlphaLevels() |
vrací počet alpha stupňů (stupňů průhlednosti) |
int numColors() |
vrací počet barev, pokud je displej barevný, jinak počet stupňů šedi |
void setCurrent(Alert alert, Displayabel nextDisplayable) |
zobrazí nejdříve objekt Alert a následně objekt Displayable |
void setCurrent(Displayable nextDisplayable) |
zobrazí objekt Displayable, který předáme jako parametr |
void setCurrentItem(Item item) |
zobrazí položku Item, kterou předáme jako parametr |
boolean vibrate(int duration) |
zapína vibrátor zařízení, pokuda nějaké má a midlet k němu
má přístup, vrací true, jinak false |