Hirdetés

2024. április 27., szombat

Gyorskeresés

Hozzászólások

(#51) vz12 válasza vz12 (#48) üzenetére


vz12
tag

No, kipróbáltam az ötletedet, nem változott semmi. :N
(pedig utána még a minSdkVersion-t is is feltettem "15"-re)

Ezután egy "régi" gyakorló programomat is ráküldtem a 4.0.3-ra, ami alig volt bonyolultabb a "Hello, World"-nél, az csont nélkül ment, targetSdkVersion nélkül is. :U
Ekkor kezdtem gyanakodni a Splash Screen-re, amivel indult a program, és tényleg ott volt a bibi !!! Amikor kiszedtem a Splash-t, akkor már nem akadt ki. Igaz ugyan hogy néhány mp-ig csak fekete képernyőt láttam, miközben inicializálódtak az adatok (sok adat, ezért csináltam a Splash-t), de aztán elindult rendesen, ezzel a hiba behatárolódott.
Kicsit kísérleteztem a targetSdkVersion-nel, kis stílusbeli (megjelenési) különbség volt bizonyos elemeknél a megszokotthoz képest (pl. a képernyő teteje, a scrollbar, a hardveres Beállítások gomb után megjelenő menü kinézete, rádió-gombok és textboxok kinézete, ilyenek), ha viszont kiszedem akkor pontosan úgy nézett ki mint addig, tehát kiszedtem. :)
Ezután a neten már gyorsan megtaláltam pl. ezt, ahol leírják hogy 4.0-tól kezdve a thread-ek kezelésében a stop() kerülendő. Tudni kell, hogy a Splash-ek külön thread-ben szoktak lenni, nálam is így van. Visszatettem a Splash Screen-t, a stop()-ot lecseréltem finish()-re, és megy, nem dob ki. Pici probléma még van vele, nevezetesen hogy a splash képernyő éppen csak felvillan, majd az adataim inicializálása alatt csak a fekete képernyőt látom a "rendes" képernyő megjelenéséig, de ezt majd valahogy megoldom. Minden bizonnyal összefüggésben van a 4.0 megváltozott thread-kezelésével, mert 2.x alatt az inicializálás során végig kint van a splash.

Tehát a minSdkVersion maradt "7", a targetSdkVersion nincs beállítva (vagyis az is "7"), és tulajdonképpen megy rendesen.

Azért írtam le ilyen részletesen, hogy akinek ilyen problémája van, az esetleg tudjon ötletet meríteni belőle. ;)

(#52) SektorFlop válasza vz12 (#51) üzenetére


SektorFlop
aktív tag

letudom a vizsgáimat és elkezdek én is komolyabban foglalkozni vele ismét!

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#53) fatal` válasza vz12 (#46) üzenetére


fatal`
titán

LogCatben meg kéne nézned, valamilyen exceptiont kaptál, meg kéne nézni milyet, melyik sorban és, akkor ki tudod deríteni, hogy mi a hiba. :)

Szerk.: Látom közben megoldódott. :)

(#40) SektorFlop: A hardveres gyorsítás múlthétig nem működött egyáltalán. Frissíts a 19-es SDKra és 4.0.3 emulátort hozz létre, beállításainál hozzá tudod adni a GPU emulationt, azt yesre téve működni fog.

[ Szerkesztve ]

(#54) vz12 válasza vz12 (#51) üzenetére


vz12
tag

Úgy tűnik, hogy a Splash Screen problémám sokat javult. :)
A sima egyszerű Thread helyett átírtam a splasht AsyncTask-osra egy netes példa alapján, ahol van onPreExecute, doInBackground, onPostExecute. Az onPostExecute-ba tettem a stop() helyett a finish()-t (meg persze a main activity elindítását), és tul.képpen oké minden. 2.x alatt rendesen megy emulátoron és a kütyün is, ahogy eddig, tehát nem sikerült elrontani. 4.0.3-ban csak emulátoron tudtam nézni (mert ilyen kütyüm nincs), ott egy jó darabig stabilan kint van a konstans tartalmú splash képernyő, a végén egy kis szabálytalan villogást ugyan megenged magának, de remélem hogy ez csak az emulátoron van így ..., mindenesetre sokkal jobb a helyzet mint eddig, a problémát megoldottnak tekintem, a kompatibilitásom megvan 2.1 és 4.0.3 között.

[ Szerkesztve ]

(#55) szoke12


szoke12
őstag

A múltkor több napig vacakoltam az eclipse-el.
Linuxon próbálkozok ugye, és leszedtem az eclipset a Szoftverközpontból. Naívan azt hittem, hogy ott a legújabb verzió van. Napokat szenvedtem az Android SDK felrakásával, mert az eclipse-re nem gyanakodtam. Utána a developers oldalon ütötte meg a szemem az a mondat hogy az Ubi soft-centerből letölthető nem kompatibilis.
Na tessék, 5 perc múlva már minden hibátlanul működött.
Legyen ez tanulság minden linux felasználó számára. :)

"Élj úgy, hogy ha majd lepereg előtted életed filmje, érdemes legyen végignézni!"

(#56) socketbind


socketbind
csendes tag

Találkozott már valaki olyannal hogy az emulator virtualization valami bűn lassú windowson? A munkahelyi gépemen rendben van (nagyon nagyon gyors), de a notebookomon katasztrofális. Linuxon kipróbálva ugyanezt nincs probléma. (Mindkettőben i5 processzor van.)

(#57) SektorFlop válasza socketbind (#56) üzenetére


SektorFlop
aktív tag

a tetőlassú dolog windows alatt teljesen elfogadott...

[ Szerkesztve ]

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#58) fatal` válasza socketbind (#56) üzenetére


fatal`
titán

Mert ilyen katasztrofális az emulátor. A nagyon-nagyon gyorstól mindig messze van, próbálj meg játékot tesztelni rajta, lehetetlen.

(#59) SektorFlop válasza fatal` (#58) üzenetére


SektorFlop
aktív tag

az emulátor lassúsága nem a linuxos keretrendeszer miatt van?:O vagy rosszul tudom, hogy amikor elindul az emulátor akkor egy kis linux is elkezd futni win alatt és ezért ilyen tetű lassú?

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#60) fatal` válasza SektorFlop (#59) üzenetére


fatal`
titán

Nem tudom, nem olvastam utána, mindenesetre nevetségesen fos az egész még az új gpu gyorsítással is.

(#61) szoke12 válasza SektorFlop (#59) üzenetére


szoke12
őstag

Nekem linux alatt olyan sebességű, mint egy telefon. bár a gépem nem egy erőbajnok.

"Élj úgy, hogy ha majd lepereg előtted életed filmje, érdemes legyen végignézni!"

(#62) SektorFlop válasza szoke12 (#61) üzenetére


SektorFlop
aktív tag

Igen, Linux alatt hasítania kell :))

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#63) socketbind


socketbind
csendes tag

Windowson végülis Intel HAXM-et használ, ami kinyírja a Virtualboxomat + még gondolom mást is, Linuxon pedig KVM-et ami a kernel része és nagyon jól működik. Valami brutálisan gyorsan települ minden, azonnal indulnak a programok, a tesztfuttatás pedig csak úgy hasad :-) Azért örültem volna ha otthon is működik. Nomindegy.

(#64) szoke12 válasza socketbind (#63) üzenetére


szoke12
őstag

Én mostmár egyébként más problémák miatt is rosszul vagyok, ha wint kell használnom. Linux alatt minden olyan egyszerű. (persze, ha már értesz hozzá vmennyire) És minden gyors.
Bár ez nem kapcsolódik a témához.
De jó, fordítsuk témába:
Ha valaki Androidra akar fejleszteni, jobban teszi, ha linuxot használ hozzá.
:)

"Élj úgy, hogy ha majd lepereg előtted életed filmje, érdemes legyen végignézni!"

(#65) fatal` válasza szoke12 (#64) üzenetére


fatal`
titán

Evvel nem lenne baj, de nem fogok dual bootot tartani és másra is fejlesztek. Inkább a kedves Googlenak kellene valamit kitalálni a wines emulátorra, mert, ha tetszik, ha nem bőven 90% fölött van a win.

(#66) SektorFlop


SektorFlop
aktív tag

Másik gépemen szenvedek az emulátorral:S

PANIC: Could not open AVD config file: C:\Documents and Settings\Dávid\.android\avd\Android_2.2.avd/config.ini

Gondolom az ékezetes betű nem tetszik neki... nem lehet átállítani hogy máshol tárolja az AVD Manager a cuccokat? Mert a mappát sajnos nem tudom átírni, új rendszert ezért meg nem akarok rakni. :W

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#67) fatal` válasza SektorFlop (#66) üzenetére


fatal`
titán

Minek kéne rendszert újra rakni? Létrehozol egy másik fiókot ékezet nélkül azt kész.

De még csak ezt sem kell bemész a mappába és az emulátornév.ini-ben átírod az elérési útvonalat, ott hagyod és elmásolod magát az emulátor mappáját ahova átírtad. Mert ha jól látom magát az elérési utat kinyeri ebből az ini fájlból úgyhogy érdekes hiba, pedig az is ékezetes mappanévben van.

(#68) SektorFlop válasza fatal` (#67) üzenetére


SektorFlop
aktív tag

Már menetközbe nekem is leesett hogy új fiókot hozzak létre...

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#69) SektorFlop


SektorFlop
aktív tag

Elkezdtem a java részel foglalkozni, és hát úgy tanulok sokat ha kis egyszerű semmire való programokat írok... lenne egy kérdésem: Hogy tudom leellenőrizni hogy rányomtam e arra a bizonyos gombra?

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#70) fatal` válasza SektorFlop (#69) üzenetére


fatal`
titán

Eseményt kell hozzárendelned, ha jól emlékszem onClickListenernek hívják.

[ Szerkesztve ]

(#71) SektorFlop válasza fatal` (#70) üzenetére


SektorFlop
aktív tag

azzal megvagyok, valami olyasmi kellene hogy mindegyik gombhoz külön eseményt rendeljen

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#72) fatal` válasza SektorFlop (#71) üzenetére


fatal`
titán

Ugyanavval a kódrészlettel? Nem használtam még a normál fejlesztői részt, csak játékot próbálok fejleszteni andenginenel, de: Ha külön eseményt szeretnél, totál más kódrészlettel akkor minden gombhoz külön listenert kell hozzáadni. Ha ugyanazt a kódrészletet akarod lefuttatni minden gombnál, akkor szerintem vagy a listenernek vagy a függvénynek van egy paramétere ahol le tudod kérni a küldő objektumot.

(#73) SektorFlop válasza fatal` (#72) üzenetére


SektorFlop
aktív tag

Sikerült közbe csak, elbénáztam egy kis apróságot:D

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#74) vz12


vz12
tag

Sziasztok!

Ismét lenne egy kérdésem.
Van egy teljes szélességű /fill-parent-es/ TableLayout-om 1 sorral, benne 5 oszlop, minden elem TextView, ezeket 2dp "left_margin" választja el egymástól. Az oszlopokban időnként változnak az adatok, de persze elférnek. A stretchColumns és shrinkColumns be van állítva és remekül működik a (nem nagy mértékben) változó adatszélesség követése. Viszont a táblázatnak van háttérszíne és így nagyon feltűnő a fekete háttéren, hogy van amikor teljesen kiér a táblázat a képernyő jobb szélére, van amikor viszont 1 vagy 2 pixel-lel (dp-vel) beljebb van, azaz nem éri el a képernyő jobb szélét. Ez így van álló és fekvő képernyőn is, valamint az emulátoron és a telefonomon is,ezen belül emulátoron 2.1 - 4.0.3-ig mindenhol.
Az rendben van hogy az oszlopok belső határai mozognak, de miért mozog a táblázat jobb széle? A fill_parent miatt nem kellene mozognia, szerintem. Esetleg valaki tudna erre megoldást? Tehát ne izegjen-mozogjon a táblázat jobb széle. Egyébként kísérletezgettem már sok mindennel, de elfogytak az ötleteim.

[ Szerkesztve ]

(#75) geckowize


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?

[ Szerkesztve ]

(#76) geckowize válasza geckowize (#75) üzenetére


geckowize
őstag

Főmenü kép

[ Szerkesztve ]

(#77) nistv4n válasza geckowize (#75) üzenetére


nistv4n
tag

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.

(#78) sekli


sekli
addikt

Érdekesség, így nézett ki az Android 2007-ben, amikor még nem érintőkijelzőre tervezték.

(#79) SektorFlop válasza sekli (#78) üzenetére


SektorFlop
aktív tag

még úgy is teljesen elfogadható volt szerintem :)

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#80) szoke12 válasza SektorFlop (#79) üzenetére


szoke12
őstag

sok minden változott azóta, de ha most is ilyen lenne, szerintem akkor is vinnék rendesen. elég stabil egy rendszer.

"Élj úgy, hogy ha majd lepereg előtted életed filmje, érdemes legyen végignézni!"

(#82) SektorFlop válasza desirehd (#81) üzenetére


SektorFlop
aktív tag

Szerintem kersesd meg a telefonod saját topicját! Ott lehet többen tudnának segíteni.

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#88) SektorFlop


SektorFlop
aktív tag

épp javasolni akartam a topic átnevezését :)

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#89) SektorFlop


SektorFlop
aktív tag

egy logo időzítőt akarok csinálni, a lényege annyi lenne, hogy a program indítása után egy logó jelenne meg és egy kis idő múlva, vált a következő képernyőre. A logó szépen megjelenik, de valamiért nem akar átváltani a következő képernyőre.

protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.logo);
Thread logoIdozito = new Thread(){
public void futas(){
try{
int logoIdozito = 0;
while(logoIdozito < 5000){
sleep(100);
logoIdozito = logoIdozito + 100;
}
startActivity(new Intent("hu.fizetes.szecsi.CLEARSCREEN"));
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
finish();
}
}
};
logoIdozito.start();
}

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#90) SektorFlop válasza SektorFlop (#89) üzenetére


SektorFlop
aktív tag

közbe meg van a hiba!

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#91) SektorFlop


SektorFlop
aktív tag

SQLite-ban valaki tudna segíteni, vagy egy hasznosnak gondolt linket adni? Sehogy se tudok összehozni még egy egyszerű táblát se :( Adatokkal való feltöltéséről nem is beszélve.

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#92) SektorFlop


SektorFlop
aktív tag

Nem túl aktív a fórum de hátha válaszol rá valaki. Egy nagyon egyszerű kérdésem lenne. A szóköznél sort szeretnék törni, de istennek se jön össze. Mi a helyes szintaktika?

spec.setIndicator("Havi egyenleg");

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#93) vz12 válasza SektorFlop (#92) üzenetére


vz12
tag

Nem tudom hogy mi az a "setIndicator", de pl. "setText"-ben, vagy "Toast"-ban nekem így működni szokott:

"Havi\negyenleg"

(#94) fatal` válasza SektorFlop (#92) üzenetére


fatal`
titán

spec.setIndicator("Havi\negyenleg")

(#93) vz12: Én sem tudom mi az, de stringet vár és ott ez a szintaktika. :D

[ Szerkesztve ]

(#95) SektorFlop válasza fatal` (#94) üzenetére


SektorFlop
aktív tag

tömören a setIndicator állítja be a tab-ok feliratát. de már közbe rájöttem hogy nem is feltétlenül kell törni a sort, mert a szöveg gördül benne.

[ Szerkesztve ]

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

(#96) vz12 válasza fatal` (#94) üzenetére


vz12
tag

Köszi a megerősítést, én is úgy gondoltam hogy ennek kb. minden string esetén működnie kellene, ezt próbáltam jelezni.
Persze ha nincs hely probléma, illetve ha pl. a "lines", "maxLines" nem korlátozza.

(#97) kerjani


kerjani
aktív tag

Sziasztok!
WiFi Direct-et szeretném próbálgatni. A Samu Galaxy Mini 2-t néztem ki, mint legolcsóbb ezt támogató droidot. Vszont azon mézeskalács van, holott az Android API szerint minimum a jégkrémszenyától (API Level 14) van támogatva.
Hogy is van ez? Nem tudok rá appot írni, de használ igen? :F

A siker 2 alapszabálya: 1. soha ne mondj el mindent, amit tudsz! ...

(#98) nistv4n válasza kerjani (#97) üzenetére


nistv4n
tag

Csak úgy tudsz használni WiFi Direct-et, hogy a fejlesztendő alkalmazásodnál a minSDK verziót 14-re állítod. Mivel a vásárolni kívánt készülék nem ICS, így nem tudod rajt tesztelni az alkalmazást. Próbáld meg esetleg ezt a virtuális képet, mondjuk VMWare-ben, vagy akár egy USB Live rendszerként. Egy android-os rendszert tudsz vele emulálni, elvileg ez támogatja a WiFi-t is, és ráadásul az új verzió már ICS kompatibilis. Sajnos nem volt alkalmam tesztelni.

[ Szerkesztve ]

(#99) fatal` válasza nistv4n (#98) üzenetére


fatal`
titán

Csak épp hálózat nincs vele, mert nincs generic iso.

(#100) SektorFlop


SektorFlop
aktív tag

Ha valaki tud segítsen, szenvedek az SQLite-al...

lenne egy olyan táblám hogy "FizetesTable" 4 rekorddal:
"FizetesID" int, primery key, auto increment
"FizetesHonap" text
"FizetesOsszeg" int
"FizetesEgyenleg" int

Sikeresen feltöltöm adatokkal... De sehogy se jön össze a kiolvasás és kiíratás. Volt egy próbálkozásom:

DatabaseHelper

db.execSQL("CREATE VIEW "+viewFizetes+
" AS SELECT "
+FizetesHonap+","
+FizetesOsszeg+","
+FizetesEgyenleg+
" FROM "+FizetesTable);

Cursor getAllFizetes(){
SQLiteDatabase db=this.getWritableDatabase();
Cursor c= db.rawQuery(viewFizetes,null);
return c;
}

[ Szerkesztve ]

"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."

Copyright © 2000-2024 PROHARDVER Informatikai Kft.