Alap számológép alkalmazás



Hasonló dokumentumok
libgdx alapok, első alkalmazás

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

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

Android alapok. Android játékfejlesztés

3. Egyszerű komponensek

libgdx alapú program létrehozása, kép importálása, mozgatása libgdx alapok Android játékfejlesztés Soós András

Példaprogramok Android alá (Lista, mentés, visszatöltés, pattogó android figura) Android alapok. Android játékfejlesztés.

OAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1.

HU-GO Mobil bemutatása április 16.

CodeBlocks installálási segédlet

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek

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

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás:

HelpyNet kézikönyv LAKOSSÁGI FELHASZNÁLÓKNAK

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

3. Gyakorlat Ismerkedés a Java nyelvvel

4. Öröklődés. Programozás II

KR TITKOSÍTÓ PROGRAM. Felhasználói leírás. v március 12.

WQMobile 1.0 kezelési útmutató

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben

2. Beadandó feladat dokumentáció

Suzuki alkatrész árlista import

Access adatbázis elérése OLE DB-n keresztül

DOCSTAMP FELHASZNÁLÓI DOKUMENTÁCIÓ A DOCSTAMP DOKUMENTUM KEZELŐ RENDSZERHEZ április 10. v1.5

ANDROID ALKALMAZÁSFEJLESZTÉS

NETFIT modul Tanári felület Felhasználói útmutató. Magyar Diáksport Szövetség

Gate Control okostelefon-alkalmazás

ANDROID ALKALMAZÁSFEJLESZTÉS

4. Gyakorlat ellenőrzött osztályozás

ANDROID ALKALMAZÁSFEJLESZTÉS

Szervlet-JSP együttműködés

Mobil készülékek programozása


9. Entitás modulok. Nagy Gusztáv: Drupal 7 alapismeretek Fejlesztői verzió: október 6.

Az Ügyfélkapu és a magyarorszag.hu

Szövegszerkesztés Verzió: 0.051

Programozási technológia

Albacomp RI Rendszerintegrációs Kft Székesfehérvár, Mártírok útja 9.

ANDROID ALKALMAZÁSFEJLESZTÉS

ANDROID 2.3 TÁBLAGÉP KEZELÉSI ÚTMUTATÓ

ADATBÁZISKEZELÉS ADATBÁZIS

Felhasználói kézikönyv

DocBook útmutató. Jeszenszky Péter Debreceni Egyetem, Informatikai Kar

Informatika E FAKT , = ±

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

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek.

vezérlő és multimédia rendszer

A DERIVE kezelése. 1. A DERIVE ablaka. Amikor elindítod a DERIVE-ot ez az ablak jelenik meg:

Broadcast Service Widget

7. Előadás. Makrók alkalmazása. Salamon Júlia. Előadás I. éves mérnök hallgatók számára

Programozás I. Első ZH segédlet

ProAnt Felhasználói Útmutató

Kézikönyv ABAS-TOOLS használata

Java bevezet o Kab odi L aszl o Kab odi L aszl o Java bevezet o

BONYOLULT TÁLBAN MOZGÓ GOLYÓ

Stateless Session Bean

Objektumorientált programozás C# nyelven III.

Tipp A Word makrók kimerítõ tárgyalását megtalálhatjuk az O Reilly gondozásában megjelent Writing Word Macros címû könyvben.

ViCA. Virtuális chipkártya alkalmazás

ANDROID ALKALMAZÁSFEJLESZTÉS

ANDROID ALKALMAZÁSFEJLESZTÉS

Eddig még nem használt vezérlőket is megismerünk: PlaceHolder, RadioButtonList.

117. AA Megoldó Alfréd AA 117.

ANDROID ALKALMAZÁSFEJLESZTÉS

Indítsuk el az imént kicsomagolt Eclipse programot és kattintsunk a Help/Install new software menüre. A work with opcióhoz írjuk be a

C# feladatgyűjtemény Kovács Emőd, Radványi Tibor, Király Roland, Hernyák Zoltán

Gate Control okostelefon-alkalmazás

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban

libgdx Android Studio alatt

Objektumorientált programozás C# nyelven

Biztonság java web alkalmazásokban

I. fejezet Hello Világ! Programozás tankönyv. II. Fejezet. Helló Világ! avagy a Miért?-ek elkezdődnek

Osztály és objektum fogalma

NEPTUN_TÖRZS. (Funkcionális leírás)


Diákigazolvány Elektronikus Igénylési Rendszer Oktatási Hivatal által biztosított igénylő felület. Felhasználói kézikönyv. v 4.1

Prezentáció használata

Kati Fotó Fuji Labor internetes ügyfélprogram Verziószám: Felhasználói útmutató

Johanyák Zsolt Csaba: Grafikus felület programozása. Copyright 2008 Johanyák Zsolt Csaba

UNITIS Rt. Windchill PDMLink oktatóanyag PDMLink ügyességek Pro/ENGINEER Wildfire környezetben

TELEMATICS regisztrációs segédlet. Gépek első aktiválása. Gép aktiválása meglévő TELEMATICS profilhoz

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

Hetedik témakör kiegészítés:

Documentation. OTRS Business Solution 5 kézikönyv

Az Állami Autópálya Kezelő Zrt. Általános Szerződési Feltételei e-matricát értékesítő viszonteladók részére. 4. számú melléklet

SzegedGuide. IT fejlesztés a város nevezetességeinek bemutatására

Kezdő lépések Virtuális Tárgyaló

ORPHEUS. Felhasználói kézikönyv. C o p y r i g h t : V a r g a B a l á z s Oldal: 1

Google Maps V2. OpenStreetMap, Mapsforge

C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem

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

Töltőfunkció Kezelési Utasítás

Objektumorientált programozás C# nyelven

Segédanyag: Java alkalmazások gyakorlat

Adatbázis-kezelés ODBC driverrel

Készítette: Citynform Informatikai Zrt.

Elemi alkalmazások fejlesztése IV. Adatbázis-kezelés ActiveX vezérlıkkel - 1

Swing GUI készítése NetBeans IDE segítségével

Algoritmusok és adatszerkezetek II.

Átírás:

Első Androidos programom - Egyszerű műveleteket használó számológép elkészítése Android Developer Tools (ADT) segítségével Alap számológép alkalmazás Android programfejlesztés Tompos Szabolcs

Tartalom 1. Ismertető, áttekintés... 2 2. Projekt létrehozása... 2 3. Projekt alapok, GUI... 4 4. Mindennek a lelke, a programozás... 6 5. Utolsó simítások, *.apk... 8 Forráskód és a kész program az alábbi LINK-en található, valamint a verseny hivatalos oldalán: https://mega.co.nz/#!0nhgxksl!8ppphlgyzow2o2j1bpvcey37myx8b43ifpdiexvzxry

1. Ismertető, áttekintés Az SDK segítségével, androidos alkalmazásokat, játékokat fejlesztünk, tesztelhetünk. Fő célja a Windows és Android alkalmazások közötti különbségek elmosása. A weben is elérhető Eclipse ADT telepítésével használható is és fejleszthetünk (a Java telepítése után). 2. Projekt létrehozása Az Eclipse elindítása után létrehozzuk az új projektet, a File >> New >> Android Application Project alatt. 1. ábra Példa az ADT környezet File menüjére A projektnek a létrehozás során, természetesen tetszőleges nevet lehet megadni, én a simple.calculator -t adtam. FONTOS! Projekt nevének megadásánál ne használjunk szóközt! Engedélyezi, de a projektben később gondot okozhat. Ajánlott a projekteknek, az alábbi beállításokat alkalmazni: 1. Itt lehet megadni a programnak, a legkisebb Android rendszerrel való kompatibilitását. 2. Az előzőhöz hasonlóan, ugyan azt a funkciót tölti be, azzal a különbséggel, hogy itt a legmagasabb verziót adjuk meg 3. A programozás során ennek a verziónak a funkcióit használhatjuk. 1. 3. 2. 2. ábra Új Androidos alkalmazás létrehozása

A következő lehetőségnél nem kell változtatni, egyszerűen csak lépjünk tovább. 3. ábra Kezdőikon kiválasztása Itt az alkalmazás ikonját tallózhatjuk ki (3.ábra). Nem szükséges itt beállítani, ezt később is megtehetjük, de egyszerűbb megoldás létrehozáskor kiválasztani. A következő lehetőségnél válasszuk a Blanc activity -t, majd tovább. 4. ábra Az Activity nevének megadása A MainActivity t és activity_main -t, célszerű alapértelmezetten hagyni és nem átírni. Későbbiekben kell rájuk hivatkozni, ha átírod, az összezavarhat. Főleg, ha más forrásból vágsz ki forráskódot. Finish gombbal hozzuk létre az új projektet.

3. Projekt alapok, GUI 5. ábra A kinézetért és a programért felelős két fájl Az 5. ábrán megjelölt fájlokra lesz szükségünk elsősorban (ill. elsőként a res/values/strings.xml). A szövegek megadásának nem a legegyszerűbb, viszont későbbiekben a leginkább zökkenőmentes megoldását mutatom meg. (egyszerűbb megoldás, egy oldallal lejjebb) 1. a már előbb említett úton nyissuk meg a strings.xml fájlt. 2. kattintsunk, az Add gombra 3. válasszuk ki a String -et 4. OK gomb (folyt. a 7. ábrán) 5. a Name mezőbe a string azonosítóját adjuk meg (calculator_strg) FONTOS! nem tartalmazhat szóközt és más speciális karaktert (# á é ő / + stb) 6. a Value* helyre pedig a kiírandó szöveget (bármilyen karakter lehet). 6. ábra Példa grafikai elemkhez rendelhető változó megadására

7. ábra Példa grafikai elemkhez rendelhető változó megadására Megtehetjük azt is, hogy új string helyett, a hello_world nevűt írjuk át tetszőlegesre. Ezt a string létrehozást használhatjuk bárhova (text, button ). 8. ábra Példa grafikai elemkhez rendelhető változó megadására Kattintsunk az adott elemre, amelynek a szövegét szeretnénk megváltoztatni, majd az Edit Text opciót, itt válasszuk ki a tetszőleges stringet. Egyszerűbb megoldás, ha a 8. ábra lépése után csak egyszerűen beírjuk a karaktert(eket) IDE. 9. ábra Példa grafikai elemkhez rendelhető változó megadására Készítsünk hasonló kinézettel egy alapot. A button a Form Widgets menü, a Text Fields-ben, pedig megtalálható a Number. 2 number, 5 button, és egy TextView az eredménnyel (nincs kiírandó karakter alapból, ezért nem látszik, de ott van alul, hidd el ). 10. ábra Példa grafikai elemkhez rendelhető változó megadására

4. Mindennek a lelke, a programozás Válasszuk a MainActivity.java fület. Ha mindent jól csináltunk valami hasonlót látunk a jobb felső sarokban (11. ábra). 11. ábra Példa az Outline fülre Jöjjön a gyönyörűséges java nyelv (2-3 példa és meg lehet szokni). Ha nem írtad át a Buttonok, EditText és TextView azonosítókat az alábbit kell beírnod. FONTOS! Nem az elem nevére gondolok, pl. Button-t átírod =re, hanem az elemek azonosítóját nem írtad át. A public class és a protected void közé kell megadni, hogy az adott elemed a grafikus felületen, milyen funkciót töltsön be. Pl. a button1 elemed Button, azaz gombként funkcionáljon. Ha hibát jelez ( ), nem kell megijedni, valószínű, hogy csak importálni kell. Ezt megteheted, a CTRL+SHIFT+O (o betű) gombok lenyomásával. public class MainActivity extends Activity { Button button1; Button button2; Button button3; Button button4; Button button5; EditText edittext1; EditText edittext2; TextView textview1; TextView textview2; @Override protected void oncreate(bundle savedinstancestate) { Ezzel csak azt adtad meg, hogy mi legyen az elemek funkciója, most hozzá is kell rendelned egy helyi változóhoz. A programozás alatt nem az elemek eredeti azonosítóját fogod használni, hanem a helyi változót, helyi azonosítót. Ezeket célszerű ugyan annak elnevezni, hogy ne legyen keveredés. Ezt a protected void oncreate alatt kell megadni. Így kell hozzárendelni (sorrendben:button,edittext,textview): button1 = (Button)findViewById(R.id.button1); button1.setonclicklistener(this); edittext1 = (EditText)findViewById(R.id.editText1); textview1 = (TextView)findViewById(R.id.textView1); Ezt természetesem minden elemre másoljuk át (button 2, button3, textview2 ).

Jól dolgoztál akkor is, ha aláhúzza a setonclicklistener-t. Ennek az-az oka, hogy egy, a telefonon való érintésért érzékelő fontos függvény még hiányzik, és a következővel kell kiegészíteni a public class t. public class MainActivity extends Activity helyett: public class MainActivity extends Activity implements OnClickListener { Ha valaki megnyom egy adott pontot a képernyőn, és ott van valamilyen aktív elem (button, spinner ) akkor ez a függvény elindítja a leprogramozott feladatot. A következő függvényt kell hozzáadni public void onclick(view v) { Ebbe a függvénybe if-ekkel, vagy switch-el kell az elemek azonosítóit megadni. Lásd: public void onclick(view v) { // TODO Auto-generated method stub switch (v.getid()) { case R.id.button1: {... Megadjuk a változókat, amibe tároljuk a beírt számokat, egy ideiglenes (amivel megjegyezzük az utoljára leütött műveletet) és egy, amivel kiíratjuk az eredményt. Ezt a public class MainActivity extends Activity implements OnClickListener függvénybe, a protected void oncreate elé kell deklarálni. int memory=0; double szam1, szam2, eredmeny = 0; Visszatérünk a public void onclick(view v) függvényhez, és a következőképpen két switch segítségével megoldjuk (természetesen számos másik megoldás is létezik). public void onclick(view v) { // TODO Auto-generated method stub switch (v.getid()) { case R.id.button1: //ugyan így button 2, 3, 4-re is { memory=1; //button2-nél 2 értéket, 3-nál 3, 4-nél 4. I. break; case R.id.button5: { szam1 = Double.parseDouble(editText1.getText().toString()); szam2 = Double.parseDouble(editText2.getText().toString()); II. III. switch (memory) { case 1:eredmeny = szam1 + szam2; break; case 2:eredmeny = szam1 - szam2; break; case 3:eredmeny = szam1 * szam2; break; case 4:eredmeny = szam1 / szam2; textview1.settext(string.valueof(eredmeny));

Az előző parancssorban az első switch-ben a memory-t egyenlővé tesszük 1-4 számig, ami a +, -, *, / operátorok helyett használjuk. I. memory változónak adunk a lenyomott gomb alapján egy számot (pl. + az 1-es) II. az edittext-be beírt értékéket átkonvertáljuk double-be, majd egyenlővé tesszük a szam 1 és a szam 2 változóval. III. Kiíratjuk az eredmeny-t a textview1-re. 5. Utolsó simítások, *.apk Mentés után, a Windows >> az elkészült appot. menü alatt lehet a virtuális géppel futtatni FONTOS! Ha egyéb hibák fordulnak elő, annak több oka is lehet. Érdemes azért megnézni, hogy a MainActivity.java fájlba (amibe programozol), legfelül az import elemek között van-e hibás. Ha van, akkor nyugodtan kitörölhetjük. Ezeket a program feleslegesen is beimportálhatja. A telepítő fájlt a C:\Users\****\simple.calculator\bin\simple.calculator.apk. Ezt kell a telefonra másolni és ott telepíteni. Elképzelhető, hogy nem fogod látni a fájlt. Akkor rejtett, tedd láthatóvá és meg is van.