Hirdetés

Alkalmazásfejlesztés badára: Utolsó simítások a listán

Bevezető

Ebben a bejegyzésben befejezzük az eddig hegesztgetett kis alkalmazásunkat. Az előző poszt utáni állapotban az egész képernyőt a lista foglalta el, az Add gomb nem fért fel. Ezen fogunk most segíteni.

OptionKey

Aki használt már bada OS-sel szerelt telefont, vagy akármilyen androidos készüléket, biztosan isemri azt a funkciót, amikor a képernyő tetején lévő csík lehúzására előugrik egy menü. Ilyesmit kódolunk bele az alkalmazásunkba is, azonban ez a képernyő alján fog elhelyezkedni. Ebbe a menübe fogjuk áttelepíteni az Új elem felvétele gombot.

A vezérlő neve Osp::Ui::Controls::OptionMenu. Használatához először engedélyezük a UI builderben, majd inicializáljuk az OnInitializing()-ben. Két "menüelem-típust" használhatunk, az egyik egy sima menüelem, a másik pedig az almenü. Utóbbit a menüelemekhez kell hozzárendelnünk. Nem kell foglalkoznunk a menü lenyílásának programozásával, ez automatikusan megcsinálja működik. A menü felépítésekor minden Add-nál meg kell adnunk az actionID-t is, amit majd később lekezelünk. A rendezés funkciók is ide kerültek (ez eddig a listára rákattintva, a TouchListener lefutásakor aktiválódott), mivel a listaelemeken már van egy Listener (az OnItemStateChanged), jobbnak láttam kitelepíteni ide ezt a funkciót is.

MessageBox

Az előző bejegyzésben törölhetővé tettük a sorokat. Ezt úgy lehetetett elérni, ha a mellettük lévő piros X-re kattintottunk. Azonban ez így egy veszélyes funkció, hiszen bármikor véletlenü is oda csúszhat az ujjunk, nem szeretnénk e miatt adatbázis-sorokat veszíteni. Ezért beépítettem ide egy felugró panelt, amin egy OK és egy Cancel gomb van, így az app csak az OK hatására töröl ténylegesen. Ezt meg lehetne csinálni Popup-pal is, azonban az elég körülményes. Helyette érdemes a bada SDK egyik beépített vezérlőjét használni, az Osp::Ui::Controls::MessageBox-ot. Ez pár sor kód hatására a megadott működést produkálja. Meg kell adni a formátumát (azaz hogy milyen gombok jelenjenek meg rajta), és elkérni az eredményt. A MessageBox-ról és a PopUp-okról bővebben lesz még szó a következő bejegyzések valamelyikében

SVN

Sikerült legyőznöm a lustaságom (sajnos csak időlegesen), megcsináltam amit már jó ideje terveztem: egy SVN repositoryt a mobilarena-s bada projecteknek. A repo URL-je: https://mobilarenabadadev.googlecode.com/svn/trunk/ . Érdemes hozzá a SubClipse nevű, Eclipse-be beépülő SVN klienst használni (akinek nincs feltelepítve, erről az Eclipse Update Site-ról fel tudja rakni). Ennek előcsalogatásához a Window->Show view->Other... menüpontból kell az SVN repositories-t kiválasztani, így már nem kell a samplecode fájlokkal szenvedni.

holdmester

Azóta történt

Előzmények