- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Netfone
- Vodafone mobilszolgáltatások
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Ezek a OnePlus 12 és 12R európai árai
- Apple Watch Sport - ez is csak egy okosóra
- Garmin Forerunner 255 Music - nem csak futóknak
- Milyen hagyományos (nem okos-) telefont vegyek?
- Milyen okostelefont vegyek?
- Fotók, videók mobillal
Hirdetés
-
VR játék lesz az Alien: Rogue Incursion
gp Az év végén érkező program PC-re, Meta Quest 3-ra és PlayStation VR2-re érkezik a tervek szerint.
-
Ülésezik a hardveregylet
ph Az irodai készülékek és monitorok társaságát egy ház, egy egér és egy DAC egészíti ki.
-
Rossz üzlet az EV-kölcsönzés
it Küszködik az EV-kölcsönzés miatt a Hertz Global, még több EV-t adnak el.
Új hozzászólás Aktív témák
-
doc
nagyúr
válasz kemkriszt98 #1222 üzenetére
Beregisztralsz, kifizeted a 25 dollaros dijat, es onnantol tolthetsz fel ingyenes appot.
-
fatal`
titán
válasz kemkriszt98 #1228 üzenetére
Legalább 5-10 hozzászólást olvasnál vissza...
Nem lehet fizetős appot publikálni Magyarországról.
-
fatal`
titán
válasz kemkriszt98 #1247 üzenetére
Esetleg, ha beírod, hogy az adb milyen exceptiont dob, amikor leáll, akkor lehet, hogy könnyebben tudunk segíteni.
-
Sianis
addikt
válasz kemkriszt98 #1249 üzenetére
Activity2 benne van a menifest fájlban?
Sianis
-
Karma
félisten
válasz kemkriszt98 #1249 üzenetére
A nullpointerexception alatti stacktrace minden soránál van egy fájlnév és egy sorszám. Ha kettőt kattintasz rá, még oda is visz az Eclipse. Nézd meg, melyik a felülről legelső sor, ami a te kódod, és javítsd ki.
Pl. egy gyanús lehetőség: a layout XML-ben nem, vagy rosszul állítottad be a TextView-k ID-jét, ami miatt a findViewById null értéket ad vissza.
[ Szerkesztve ]
“All nothings are not equal.”
-
fatal`
titán
válasz kemkriszt98 #1254 üzenetére
Akkor a t1 null, valamiért nem találja a findviewbyid a textboxot az xmlben.
-
Karma
félisten
válasz kemkriszt98 #1256 üzenetére
Mi lenne, ha a layout XML-t és ezt a Java forrásfájlt megosztanád velünk pl. PasteBinen, és akkor nem kéne vakon találgatni?
“All nothings are not equal.”
-
SektorFlop
aktív tag
válasz kemkriszt98 #1249 üzenetére
RuntimeException: Unable to start activity ComponentInfo{....}: Java.lang.NullPointerException
Lehet butaság de én a fenti exceptionból arra következtetnék hogy az onCreate-ból lemaradt a setContentView() metódus. Bár nem kizárt hogy több oka is lehet az alábbi üzenetnek.
[ Szerkesztve ]
"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."
-
SektorFlop
aktív tag
válasz kemkriszt98 #1260 üzenetére
Igen úgy odapakolja, sorry az elkerülte a figyelmem.
"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."
-
SektorFlop
aktív tag
válasz kemkriszt98 #1262 üzenetére
setContentView-t tedd UI elemek definiálása elé.
"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."
-
kemkriszt98
aktív tag
válasz kemkriszt98 #1264 üzenetére
Amúgy ezt meg tudnád magyarázni , hogy miért van így? Hisz attól még az R.java létezik és az id ott van...
"Tigris, tigris, csóvafény éjszakáknak erdején, mily kéz adta teneked szörnyü és szép termeted?" -William Blake-
-
rgeorge
addikt
válasz kemkriszt98 #1265 üzenetére
Csak pl. a view-k létre sem jönnek a setContentView hívás előtt, mert éppen abban jönnek létre.
Picard: "What we leave behind is not as important as how we've lived. After all, Number One, we're only mortal." Riker: "Speak for yourself, sir. I plan to live forever."
-
SektorFlop
aktív tag
válasz kemkriszt98 #1265 üzenetére
Magyarázásba nem vagyok jó, buta "programozó" vagyok nem tudok róla beszélni csak kódolni tudok vagy néha még azt se. De azért megpróbálom érthetően leírni, max a többiek kijavítanak majd.
Szóval, elsőnek az activity-ben létre kell hozni egy view-t (fel kell "fújni" a layout-ot), és csak ezután léteznek az elemek.
"Amikor már azt hittem kint vagyok, ezek mindig visszarántottak..."
-
fatal`
titán
válasz kemkriszt98 #1265 üzenetére
Az ott van, csak maga a textbox nem létezik, mert a setContentView tölti be.
-
kemkriszt98
aktív tag
válasz kemkriszt98 #1275 üzenetére
Valami az int-ek körül van...
"Tigris, tigris, csóvafény éjszakáknak erdején, mily kéz adta teneked szörnyü és szép termeted?" -William Blake-
-
Yany
addikt
válasz kemkriszt98 #1277 üzenetére
Szerintem int esetén egy resource azonosítónak véli az értékét. Pl. R.id.valami.
Építs kötélhidat - https://u3d.as/3078
-
thon73
tag
válasz kemkriszt98 #1277 üzenetére
Gugli első találat
Szépen így kell int-et kiírni:
tv.setText(String.valueOf(k));
De ha valami szöveget hozzáfűzöl, akkor az átalakítás automatikusan megtörténik:
tv.setText(""+k);
Vagy:
tv.setText("Az eredmény: " + k);Volna még egy javaslatom: az activity-re, mint egységes egészre kell tekinteni. Az egyes UI elemek ennek az egésznek képezik részét, és bármely alrészletnek (metódusnak) szüksége lehet rájuk. Ezért érdemes osztály színtű (akár private) változóként elkészíteni őket, melyek az onCreate-ben kapnak értéket. Ettől a ponttól kezdve viszont minden résznek (a Listener-nek is) rendelkezésére állnak. Meglátod, sokat egyszerűsödik a kód.
-
thon73
tag
válasz kemkriszt98 #1281 üzenetére
Ha jól fordítom magyarra a kérdést:
Különböző layout-okon azonos névvel jelölt UI elemek nem zavarják-e a programot?Ez egy nagyon jó kérdés. A gyakorlat azt mutatja, hogy nem zavarja; nekem is van két "filter"-em két különböző layout-ban. Mivel a keresés mindig egy layout-on belül történik, ezért (természetesen) mindig a megfelelőt találja meg.
Ugyanakkor, ha az R.java-t (gen-ben) megnézed, akkor csak egyetlen filter szerepel benne, vagyis esetemben a két filter ugyanazt az azonosítót kapja.
((Én ezt fel is használtam a Fragmentek kezelésében: Ha portrait és landscape módban ugyanazon nevű frame-ek szerepelnek, akkor a kész fragment visszatölthető (pontosabban visszatöltődik). Különböző nevű frame-ekbe ugyanaz a fragment példány nem tölthető be.))
-
Karma
félisten
válasz kemkriszt98 #1298 üzenetére
Float és double típusoknál a nullával való osztás Infinityt ad vissza; ellentétben az egész számokkal ahol kivételt dob.
“All nothings are not equal.”
-
kemkriszt98
aktív tag
válasz kemkriszt98 #1749 üzenetére
Bocs, megint elfelejtettem a barátom : Google
"Tigris, tigris, csóvafény éjszakáknak erdején, mily kéz adta teneked szörnyü és szép termeted?" -William Blake-
-
Karma
félisten
válasz kemkriszt98 #1750 üzenetére
Ez akkor azt jelenti, hogy sikerült önerőből megoldanod?
“All nothings are not equal.”
-
addikt
válasz kemkriszt98 #1821 üzenetére
Ha kifejezetten facebook kell, akkor a facebook SDK-t kell használnod.
-
WonderCSabo
félisten
válasz kemkriszt98 #1845 üzenetére
A custom themedhez add hozzá ezt a sort:
<item name="android:windowActionBar">false</item>
Amit te el akarsz tüntetni, az nem a TitleBar, hanem az ActionBar.
[ Szerkesztve ]
-
WonderCSabo
félisten
válasz kemkriszt98 #1847 üzenetére
Hmm, ezek szerint ez nem elég neki. Próbáld ki itt a válaszokat, több is jó. TitleBar már nincs, helyette az ActionBar van API 11 óta.
-
WonderCSabo
félisten
válasz kemkriszt98 #1895 üzenetére
A Toast-ot nem tudod használni háttérszálon, csak a UI szálon. Az onPostExecute-ban hívogasd a Toast-ot, az az UI szálon hívódik meg, és pont erre való.
-
WonderCSabo
félisten
válasz kemkriszt98 #1903 üzenetére
Kódot mutasd, mert ezek alapján mennie kéne.
-
kemkriszt98
aktív tag
válasz kemkriszt98 #1905 üzenetére
Egyébként bizonyos esetekben a ListView egyik elemére kattintva(van listener) egy olyan kivételt kapok miszerint a ListView tartalma megváltozott de erről az nem értesült... ellenőrizzem hogy nem e változtatom meg a ListView tartalmát egy háttérszálból..... erről eszembe jutott hogy DE... igenis megváltoztatom háttérszálból a tartalmát... úgyhogy fogtam magam és átírtam a kódot úgy hogy az AsyncTask egy tömblistát tölt fel és az ebben lévő elemeket a főszálban hozzáadom az adapterhez.... de így egyáltalán nem jelennek meg az elemek....
"Tigris, tigris, csóvafény éjszakáknak erdején, mily kéz adta teneked szörnyü és szép termeted?" -William Blake-
-
Karma
félisten
válasz kemkriszt98 #1909 üzenetére
Ugye az adapterhez adogatás után meghívod a notifyDataSetChanged() metódusát, UI szálon?
“All nothings are not equal.”
-
WonderCSabo
félisten
válasz kemkriszt98 #1909 üzenetére
Karmának valószínűleg jó a sejtése. Az onCreateben elindítasz egy AsyncTaskot. Ezután rögtön lefut az onResume, ami meg is hívja a notifyDataSetChanged()-et, de túl korán, ilyenkor az AsyncTask még nem végzett, sőt még egy elem sincs benn ekkor az adapterben. A doInBackground-ban adogatsz hozzá az adapterhez, az adapter ekkor frissítené a ListView-t (már ha az ArrayAdapter.add() metódust hívod meg), de ez azért nem történik meg, mert háttérszálról hívod az addItem()-et.
A megoldás itt elvileg az lenne, hogy az onPostExecute-ban hívsz egy notifyDataSetChanged()-et. -
Karma
félisten
válasz kemkriszt98 #1914 üzenetére
Hát a deleteAll sok mindent csinál, de a lista törlése nincs közöttük. Egyszer azért gondold végig, mi történik így ahogy leírtad
Aztán meg dobd ki az egészet és használd a clear() metódust.
“All nothings are not equal.”
-
WonderCSabo
félisten
válasz kemkriszt98 #1936 üzenetére
A ViewPager alapvetően Fragmenteket tartalmaz, azaz egy oldal egy Fragment-et jelent. A Fragment-et kell lekérni tag alapján, és meghívni annak a getView() metódusát.
-
eastsider
nagyúr
válasz kemkriszt98 #1938 üzenetére
ha nem megy szólj pont most csináltam viewpageres megoldást. igaz listfragmentekkel
-
WonderCSabo
félisten
válasz kemkriszt98 #2081 üzenetére
Az lv biztos nem null?
-
WonderCSabo
félisten
válasz kemkriszt98 #2084 üzenetére
Milyen jellegű munka miatt kell frissíteni? Erre vannak megoldások: Thread, AsyncTask, Service, IntentService, Looper, stb...
-
kemkriszt98
aktív tag
válasz kemkriszt98 #2086 üzenetére
Megoldás: Thread-ben invalidate() helyett postInvalidate() hivogatása....
"Tigris, tigris, csóvafény éjszakáknak erdején, mily kéz adta teneked szörnyü és szép termeted?" -William Blake-
-
thon73
tag
válasz kemkriszt98 #2144 üzenetére
MIt jelent, hogy "teljesen rossz helyen"? Rossz kezdőponton v. csak rossz irányban/méretben? Én első körben leellenőrizném az összes értéket log-ban, aztán kiderül...
-
Karma
félisten
válasz kemkriszt98 #2250 üzenetére
installLocation elem kéne a manifestbe.
“All nothings are not equal.”
-
WonderCSabo
félisten
válasz kemkriszt98 #2304 üzenetére
Kommentezd ki a setTextSize() hívást, és próbáld úgy.
coco2: Olvasd el ezt.
-
Karma
félisten
válasz kemkriszt98 #2307 üzenetére
A koordináta a szöveg alsó szélét adja meg. Vízszintesen meg az igazítástól függően bal sarok, középpont vagy jobb sarok.
A szöveg magasságát, amivel a megfelelő számításokat el tudod végezni, a Paint getTextBounds hívásával kapod meg.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz kemkriszt98 #2317 üzenetére
Egy ötletem van: teljesen véletlen nem használtál ékezetes neveket az osztályaidnak, vagy bármit a manifestben?
“All nothings are not equal.”
-
Karma
félisten
válasz kemkriszt98 #2319 üzenetére
Igen, ezért is kérdeztem: Windows és OSX/Linux között mozgatáskor bekavarhat az eltérő karakterkódolás. (Többek között ezért is fontos, hogy ne a Java kódba legyenek beégetve a magyar feliratok ).
De sajnos így hirtelen nincs más ötletem. A LogCaten semmi se látszik? Debuggerrel futtatva breakpointon megáll a kód, amikor képernyőt kéne váltani?
“All nothings are not equal.”
-
DrojDtroll
addikt
válasz kemkriszt98 #2328 üzenetére
Javaban milyen szintű ismeret kell?
-
kemkriszt98
aktív tag
válasz kemkriszt98 #2416 üzenetére
*az emulátort nem használom
"Tigris, tigris, csóvafény éjszakáknak erdején, mily kéz adta teneked szörnyü és szép termeted?" -William Blake-
-
kemkriszt98
aktív tag
válasz kemkriszt98 #2416 üzenetére
Bocs
[ Szerkesztve ]
"Tigris, tigris, csóvafény éjszakáknak erdején, mily kéz adta teneked szörnyü és szép termeted?" -William Blake-
-
fatal`
titán
válasz kemkriszt98 #2416 üzenetére
Én az emulátor helyett Genymotiont használok, sokkal gyorsabb.
-
WonderCSabo
félisten
válasz kemkriszt98 #2744 üzenetére
Ez alapján próbáltad ugye? Nekem jónak tűnik a kód. Tuti jó a csomagnév amit a receivernek megadták a manifestben (com.example)?
[ Szerkesztve ]
-
Sianis
addikt
válasz kemkriszt98 #2746 üzenetére
Mondjuk én emiatt szeretem úgy írni a Manifestet, hogy
<receiver android:name=".BluetoothReceiver">
<intent-filter>
<action android:name="android.bluetooth.headset.profile.action.CONNECTION_STATE_CHANGED"/>
</intent-filter>
</receiver>És akkor nagyon ügyelni sem kell semmire.
-
Sianis
addikt
válasz kemkriszt98 #2744 üzenetére
Hogy azért konstruktív módon is hozzászóljak, biztosan jó helyen van a Manifestben a receiver tag? Ugye ezeknek a application tag-en belül kell lenniük, véletlenül sem activity és egyéb társaikon belül.
-
Karma
félisten
válasz kemkriszt98 #2749 üzenetére
Ilyenkor azonnal a Logcatet kéne nézned, mert ott kiírja, milyen exception hatására és hol omlott össze az alkalmazásod. Valószínűleg valami null pointer okozza.
“All nothings are not equal.”
-
kemkriszt98
aktív tag
válasz kemkriszt98 #2751 üzenetére
Ok, a sok szöveg közt félre olvastam és meg is lett a megoldás:
Intent.FLAG_ACTIVITY_NEW_TASK
"Tigris, tigris, csóvafény éjszakáknak erdején, mily kéz adta teneked szörnyü és szép termeted?" -William Blake-
Új hozzászólás Aktív témák
- A fociról könnyedén, egy baráti társaságban
- Milyen SSD-t vegyek?
- Horgász topik
- Milyen autót vegyek?
- Mazda topik
- Építő/felújító topik
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Gran Turismo
- Kerékpárosok, bringások ide!
- További aktív témák...