SZOFTVERFEJLESZTÉS ANDROID PLATFORMRA. Dr. Iszály György Barna

Hasonló dokumentumok
3. Egyszerű komponensek

Szálkezelés Rajzolás képernyőre Bevitel kezelése - Érintő képernyő - Billentyűzet

Szálkezelés Rajzolás képernyőre Bevitel kezelése - Érintő képernyő - Billentyűzet

Alap számológép alkalmazás

Stateless Session Bean

SZOFTVERFEJLESZTÉS ANDROID PLATFORMRA. Dr. Iszály György Barna

Broadcast Service Widget

SZOFTVERFEJLESZTÉS ANDROID PLATFORMRA. Dr. Iszály György Barna

ArcGIS 8.3 segédlet 5. Dr. Iványi Péter

Concurrency in Swing

JUnit. JUnit használata. IDE támogatás. Parancssori használat. Teszt készítése. Teszt készítése

I. 288.: Utcai WiFi térkép

C#, OOP. Osztályok tervezése C#-ban

strings.xml res/values/strings.xml fájlban hozzuk létre a hiányzó string adatforrásainkat A jelenlegi helyett ez álljon: <resources> <string

BME MOGI Gépészeti informatika 6.

Collections. Összetett adatstruktúrák

Szerializáció. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Szerializáció / 22

Javadoc. Dokumentációs megjegyzés (2) Dokumentációs megjegyzés (1) Dokumentációs megjegyzés felépítése

Széchenyi István Egyetem. Programozás III. Varjasi Norbert

Szoftvertechnolo gia gyakorlat

OOP: Java 4.Gy: Java osztályok

Szoftvertechnológia alapjai Java előadások

Vodafone-os beállítások Android operációs rendszer esetében

Újdonságok a Google műhelyéből. Péter Ekler

és az instanceof operátor

Adatbázis-kezelés API hívásokkal. Adatbázis-kezelés ODBC-vel. Adatbázis-kezelés SQL parancsokkal. Adatbázis-kezelés ODBC-vel.

Overview. Service. Application Activity Activity 2 Activity 3. Fragment. Fragment. Fragment. Frag ment. Fragment. Broadcast Receiver

Deep Learning a gyakorlatban Python és LUA alapon Felhasználói viselkedés modellezés

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán

Felhasználó által definiált adattípus

Android alapú szoftverfejlesztés kezdőknek Gyakorlati feladatsor oktatási segédanyag, mely a

Objektumorientált programozás C# nyelven III.

A gyakorlat során az alábbi ábrán látható négy entitáshoz kapcsolódó adatbevitelt fogjuk megoldani.

Informatika terméktervezőknek

Android Commander Felhasználói kézikönyv

1 "Ház/Home" gomb lenyomás 2 "Beállítások" kiválasztása le nyilakkal 3 "Auto. Hangolás" kiválasztása jobbra nyillal 4 OK gomb megnyomása 5 "Antenna"

OOP: Java 8.Gy: Abstract osztályok, interfészek

3. Osztályok II. Programozás II

Képek és grafikák használata

Java Programozás 4. Gy: Java GUI. Tipper, MVC kalkulátor

BME MOGI Gépészeti informatika 18. Grafika, fájlkezelés gyakorló óra. 1. feladat Készítsen alkalmazást az = +

Mobil Informatikai Rendszerek

Oszkar.com Android alkalmazás v1.2

Objektumorientált programozás C# nyelven

BME MOGI Gépészeti informatika 8.

Objektumorientált programozás C# nyelven

Programozási nyelvek Java

Objektumorientált programozás C# nyelven

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész

BME MOGI Gépészeti informatika 7.

Hova tovább Android? OpenJDK és további várható újdonságok.

Akciók, diavetítés. 1. ábra Akciógombok. A lap két regiszterfülből áll, ezek a Kattintásra és az Áthaladáskor. Nézzük meg először az elsőt!

Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges. Könyvtárhierarhiát fed: Pl.: java/util/scanner.java

Rendezések. A föltöltés nemcsak az r-re vonatkozik, hanem az s-re is. Ez használható föl a további rendezések

Programozás I. Első ZH segédlet

QLink Universal SOFTPHONE - TELEPÍTÉSI ÚTMUTATÓ

XML / CSV specifikáció

Java grafikai lehetőségek

Programozási nyelvek Java

Segédanyag: Java alkalmazások gyakorlat

Android Wear programozás. Nyitrai István

Java-s Nyomtatványkitöltő Program Súgó

Sorosítás (szerializáció) és helyreállítás. 1. Bináris sorosítás és helyreállítás Szükséges névterek Attribútumok. 1.3.

Mobil Informatikai Rendszerek

Android Commander Felhasználói kézikönyv

Adatforgalomra vonatkozó beállítások. Lépjünk be a Beállítások menübe

évi adatszolgáltatások javítása

MEDIAKLIKK.HU. Főoldal:

Miután létrehoztuk, szeretnénk neki beszédesebb nevet adni. A név változtatásához a következőt kell tenni:

Adatbázis-kezelés ODBC-vel

Belföldi Termékosztályozás V

Euro költségátalány. MNB Árfolyam letöltés. Műveletek \ MNB Árfolyam letöltés menüpontban.

Osztályok. 4. gyakorlat

NAV nyomtatványok kitöltésének támogatása

Objektumorientált programozás C# nyelven

Java programozási nyelv 6. rész Java a gyakorlatban

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

// keressük meg a legnagyobb faktoriális értéket, ami kisebb, // mint százmillió

SZOFTVERFEJLESZTÉS ANDROID PLATFORMRA. Dr. Iszály György Barna

Madarassy László, mérnök, BME - Mobil Innovációs Központ. lmadarassy@mik.bme.hu

Java és web programozás

Java programozási nyelv 5. rész Osztályok III.

Merev testek mechanikája. Szécsi László

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN

Az XCZ állományban szereplő állományok nevének UTF-8 kódolásúnak kell lennie. Probléma esetén használjon ékezet nélküli állományneveket.


Programozás Minta programterv a 1. házi feladathoz 1.

Cirkónium kiégető kemence

Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Programozási környezetek

Java Programozás 11. Ea: MVC modell

Név: Neptun kód: Pontszám:

CE52-24/F(C) Központi vezérlő. Kezelési kézikönyv

Kontrollált erjesztés

Konkurens TCP Szerver

Tervminták a valósidejű gyakorlatban

Eljárások, függvények

TEÁOR kód Kereső - nyilvántartó program V

Java-ról Kotlinra. Ekler Péter AutSoft BME AUT. AutSoft

Johanyák Zsolt Csaba: Ugráló gomb oktatási segédlet Copyright 2008 Johanyák Zsolt Csaba

Átírás:

SZOFTVERFEJLESZTÉS ANDROID PLATFORMRA Dr. Iszály György Barna

ANIMÁCIÓK Háromféle animáció áll rendelkezésünkre Tweened animáció Frame by frame animáció Property animation Az animációkat erőforrás állományokban érdemes megadni, melyeket a /res/anim alkönyvtárba kell elhelyeznünk.

TWEENED ANIMATION Négy plusz egy animációs forma közül választhatunk: alpha az átlátszóság állítható vele scale a méretezés beállítására szolgál translate a mozgatás megvalósítását végzi rotate a forgatás beállítása valósítható meg vele +1 set csoportba foghatjuk az animációs elemeket, így összetett animációk készíthető Az animáció lefolyását befolyásolhatjuk. android:duration az animáció időtartama adható meg vele miliszekundumban android:fillafter ha értéke igaz, akkor az animáció befejeződése után alkalmazza a módosításokat android:fillbefore ha értéke igaz, akkor az animáció elindítása előtt alkalmazza a módosításokat android:interpolator az animáció sebességét változtatja meg. Ezáltal egy animáció lehet gyorsuló, lassuló, ismétlődő stb. android:repeatcount az animáció ismétlődésének számát adja meg. android:startoffset az animáció indításának késleltetése adható meg vele miliszekundumban

PÉLDA ÖSSZETETT TWEENED ANIMÁCIÓRA <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <rotate xmlns:android="http://schemas.android.com/apk/res/android" android:fromdegrees="0 android:todegrees="360" android:toyscale="0.0 android:pivotx="40%" android:pivoty="30% android:duration="2000" /> <alpha android:fromalpha="1.0" android:toalpha="0.0" android:duration="4000" /> <scale android:fromxscale="1.0" android:toxscale="0.0 android:fromyscale="1.0" android:toyscale="0.0 android:pivotx="0" android:pivoty="0 android:duration="2000" /> </set> Összetett animáció Elforgatás 360 fokban Elhalványulás, vagy megjelenés Skálázás

ANIMÁCIÓ HÍVÁSA PROGRAMBÓL final Animation a = AnimationUtils.loadAnimation(this, R.anim.textanimation); a.reset(); final TextView animtext = (TextView) findviewbyid(r.id.animszoveg); animtext.setonclicklistener(new View.OnClickListener() { @Override public void onclick(view v) { animtext.startanimation(a); );

FRAME BY FRAME ANIMÁCIÓ Egy animation-list elemben fel kell sorolnunk az egymás után megjelenítendő képeket a hozzájuk tartozó időtartammal. <?xml version="1.0" encoding="utf-8"?> <animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="true"> <item android:drawable="@drawable/kocka1 android:duration="200"/> <item android:drawable="@drawable/kocka2 android:duration="200"/> <item android:drawable="@drawable/kocka3 android:duration="200"/> <item android:drawable="@drawable/kocka4 android:duration="200"/> <item android:drawable="@drawable/kocka5 android:duration="200"/> <item android:drawable="@drawable/kocka6 android:duration="200"/> </animation-list>

FRAME BY FRAME ANIMÁCIÓ INDÍTÁSA PROGRAMBÓL ImageView kep=(imageview) this.findviewbyid(r.id.imageview_kocka); kep.setimageresource(r.drawable.kocka_animation); final AnimationDrawable kockaanim=(animationdrawable) kep.getdrawable(); kep.setonclicklistener(new View.OnClickListener() { ); @Override public void onclick(view v) { kockaanim.start();

PROPERTY ANIMÁCIÓ Android API 12-es verziójától Ezzel szinte minden elem animálható Ugyanazok az animációk hajthatóak végre vele, mint a tweened animációkkal, de nem csak View elemeken Példa: final TextView prop_anim_szoveg=(textview) this.findviewbyid(r.id.textview_prop); prop_anim_szoveg.setalpha(0); prop_anim_szoveg.animate().setduration(4000); prop_anim_szoveg.animate().alpha(1); Az előtűnés animáció paramétereinek beállítása és animálása

PROPERTY ANIMÁCIÓ PÉLDA Példa: Integer colorfrom = getresources().getcolor(r.color.feher); Integer colorto = getresources().getcolor(r.color.zold); final ValueAnimator coloranimation = ValueAnimator.ofObject(new ArgbEvaluator(), colorfrom, colorto); coloranimation.setduration(4000); A ValueAnimator osztállyal egy intervallumon belüli animáció határozható meg. Jelen esetben a kiinduló érték a fehér színtől, jutunk el a zöld színig.

PROPERTY ANIMÁCIÓ PÉLDA coloranimation.addupdatelistener(new AnimatorUpdateListener(){ @Override public void onanimationupdate(valueanimator arg0) { prop_anim_szoveg.settextcolor((integer)arg0.getanimatedvalue()); ); prop_anim_szoveg.setonclicklistener(new View.OnClickListener() { @Override public void onclick(view v) { // A színátmenet animáció indítása érintésre coloranimation.start(); ); Az onanimationupdat e() metódust hívja meg az animáció minden egyes frame-je. A paraméterként kapott ValueAnimator tartalmazza az animációhoz kiszámított aktuális értéket.

MENÜK Lgegyszerűbben erőforrások felhasználásával hozhatjuk létre a menüt A /res/menu alkönyvtárban hozzuk létre az XML erőforrás állományt <menu> elem a gyökérelem, és több <menu> elem is egymásba ágyazható - több szintű menü <item> menüpontok Példa az erőforrás állományra: <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/menu1 android:title="@string/menupont1"/> <item android:id="@+id/menu2 android:title="@string/menupont2"> <menu> <item android:id="@+id/almenu1 android:title="@string/almenu1"/> <item android:id="@+id/almenu2 android:title="@string/almenu2"/> </menu> </item> <item android:id="@+id/menu3 android:title="@string/menupont3"/> </menu>

MENÜ BEÁLLÍTÁSA A PROGRAMBAN @Override public boolean oncreateoptionsmenu(menu menu) { getmenuinflater().inflate(r.menu.menuk, menu); return true;

MENÜ KEZELÉSE PROGRAMBÓL @Override public boolean onoptionsitemselected(menuitem item) { switch(item.getitemid()){ case R.id.menu1: Toast.makeText(MenukActivity.this, "Az első menüpontott választottad", Toast.LENGTH_LONG).show(); return true; case R.id.almenu1: Toast.makeText(MenukActivity.this, "Az első almenüt választottad", Toast.LENGTH_LONG).show(); return true; case R.id.almenu2: Toast.makeText(MenukActivity.this, "A második almenüt választottad", Toast.LENGTH_LONG).show(); return true; case R.id.menu3: Toast.makeText(MenukActivity.this, "A harmadik menüpontot választottad", Toast.LENGTH_LONG).show(); return true; default: return super.onoptionsitemselected(item);