Keresés

Új hozzászólás Aktív témák

  • Hello!

    Idén vettem fel egy Android alapú szoftverfejlesztés nevű tárgyat és nem sokára le kell adni a házit, viszont a Java ismereteim kissé hiányosak, ezért nem nagyon tudok elindulni.

    Leírás:
    Az alkalmazás neve CompareDroid. Célja, hogy néhány népszerűbb, előre "betáplált" androidos telefon közül két kiválaszottt modellnek legfontosabb hardver adatait összehasonlítsuk vele. Ha olyan telefont akarunk összehasonlítani, ami nincs benne, gsmarena.com-ról leszedi az információkat.

    Úgy terveztem, hogy az első activity egy főmenü, amiben két spinnerből kiválaszthatjuk a két összehasonlítandó telefont, majd alatta lesz egy Compare button, ezt megnyomva jön be a compare activity képernyője, ami kb így nézne ki:

    Ha esetleg nem találtuk azt a telefont, amit össze akartunk hasonlítani, menü gombra bejön egy menü és van egy Új hozzáadása menüpont. Ezen belül hozzáadhatjuk manuálisan is, illetve gsmarena.com-ról is lehúzhatjuk az adatokat.

    A főmenü már megvan.

    A Phone osztályt megírtam és hozzá a PhoneAdaptert, amit egy laboron megoldott tennivaló app Todo és TodoAdapter osztályából írtam át valahogy, de nem nagyon megy, mivel nem értek pontosan mindent, hogy ott mi miért volt.

    Az adatokat perzisztensen kéne tárolni (SQLite), amiben megint csak még gyakorlatlan vagyok.

    Nem azért írok, hogy valaki írja meg és küldje el ezt a programot, csak valami alapot szeretnék az elinduláshoz, hogy milyen osztályok kellenek és hogy lehet androidban megoldani a fent leírt mechanizmust.

    Eddigi nagy falak, amikbe ütköztem:
    1. Spinnernél hogyan rakom bele az elemeket? Spinnerben az elemek mellé lehet képet rakni?
    2. Tablelayout hogy működik? Tablelayout után tablerow és mi felel meg az oszlopnak? A fenti táblázatot nem tudtam megírni xml-be, hogyan kéne?
    3. Hogyan kell leszedni pl innen a cpu clock, ram értékét?

    Szia!

    1. Spinner mellé is lehet képet rakni, ahhoz is egy adaptert kell készíteni, mint például ListView esetében, no meg a soroknak kell készíteni egy általános row layout-ot, amely tartalmaz egy képet, meg egy szöveget. itt találsz egy jó kis leírást hozzá, most sajnos nincs időm leírni az egészet. Lényege az, hogy az adapter konstruktorban megkapja a contextet, az általad kreált sor layout-ot, meg egy tömböt, amiben a címkék vannak.
    Majd a getCustomView metódusban összeállítod a megjelenést, itt a position jelenti az aktuális sorszámot, így ha tömbben tárolod a megjelenítendő értékeket (ez esetben ajánlott), akkor tudsz ezzel hivatkozni a sorszámra. A képeket is érdemes tömbben tárolni, megfelelő sorrendben.

    2. TableLAyout-ban a sorok adottak ugye a TableRow elemmel, az oszlopok pedig nemes egyszerűséggel valamilyen View elemmel (ImageView, TextView, stb) alakítható ki. Szimplán beleszórod és kész is. Ha egyforma széles cellákat akarsz, akkor minden view layoutWeight paramétere legyen egyforma, pl 1. Beállítható colspan és minden finomság, mint pl HTML esetében, ha ott dolgoztál ilyennel. Ez meg a doksiban benne van. Érdemes egyébként a sorokra meg a benne levő, oszlopokat alkotó View-kra style-t definiálni, és akkor a kódból automatikusan hozzáadható sor egyszerűen, stílus hozzárendeléssel.
    Konkrétan a fenti táblázatban kell egy tablelayout, abban az első tablerow legyen fix, első eleme mondjuk egy üres textview, valami akkora mérettel, ami utána is alkalmazható. Ezt kövesse két imageview, egyedi id-vel. Utána levő sorok ismétlődnek, ezért inkább programkódból írd meg, mert minden mezőnek külön, saját id-t, majd ezekhez értéket rendelni, na az nem szép, ellenben munkás :) Szimplán hozz létre egy objektumot a TableLayout-odnak (findviewbyid), majd egy sor objektumot, ehhez add hozzá, amit szeretnél. hozzáadásokat az addview paranccsal csinálhatsz, de ha stílust alkalmazol, azt is add hozzá, egyébként szétcsúszhat. Ha a vonalakat akarod előhozni, érdemes a border tulajdonságot nézegetni.

    3. Ezt sajnos nem tudom, legrosszabb esetben forráskódban való keresés, de biztos van ennek egyszerűbb módja is.

  • geckowize
    őstag

    Hello!

    Idén vettem fel egy Android alapú szoftverfejlesztés nevű tárgyat és nem sokára le kell adni a házit, viszont a Java ismereteim kissé hiányosak, ezért nem nagyon tudok elindulni.

    Leírás:
    Az alkalmazás neve CompareDroid. Célja, hogy néhány népszerűbb, előre "betáplált" androidos telefon közül két kiválaszottt modellnek legfontosabb hardver adatait összehasonlítsuk vele. Ha olyan telefont akarunk összehasonlítani, ami nincs benne, gsmarena.com-ról leszedi az információkat.

    Úgy terveztem, hogy az első activity egy főmenü, amiben két spinnerből kiválaszthatjuk a két összehasonlítandó telefont, majd alatta lesz egy Compare button, ezt megnyomva jön be a compare activity képernyője, ami kb így nézne ki:

    Ha esetleg nem találtuk azt a telefont, amit össze akartunk hasonlítani, menü gombra bejön egy menü és van egy Új hozzáadása menüpont. Ezen belül hozzáadhatjuk manuálisan is, illetve gsmarena.com-ról is lehúzhatjuk az adatokat.

    A főmenü már megvan.

    A Phone osztályt megírtam és hozzá a PhoneAdaptert, amit egy laboron megoldott tennivaló app Todo és TodoAdapter osztályából írtam át valahogy, de nem nagyon megy, mivel nem értek pontosan mindent, hogy ott mi miért volt.

    Az adatokat perzisztensen kéne tárolni (SQLite), amiben megint csak még gyakorlatlan vagyok.

    Nem azért írok, hogy valaki írja meg és küldje el ezt a programot, csak valami alapot szeretnék az elinduláshoz, hogy milyen osztályok kellenek és hogy lehet androidban megoldani a fent leírt mechanizmust.

    Eddigi nagy falak, amikbe ütköztem:
    1. Spinnernél hogyan rakom bele az elemeket? Spinnerben az elemek mellé lehet képet rakni?
    2. Tablelayout hogy működik? Tablelayout után tablerow és mi felel meg az oszlopnak? A fenti táblázatot nem tudtam megírni xml-be, hogyan kéne?
    3. Hogyan kell leszedni pl innen a cpu clock, ram értékét?

Új hozzászólás Aktív témák