Turkcell | Geleceği Yazanlar

Soru & Cevap

Listview

29.01.2015 - 11:49

Merhaba 

Web servis üzerinden gelen harcama noktalarını listemek için il, ilçe ve semt gibi verileri listview üzerinde göstererek ordan seçip işlem yapmak istiyorum. Gelen verileri bir string dizi içine aktarıyorum. ArrayAdapter içine aktardıktan sonra hata alıyorum. İlk android projem ve projenin son adımı. Yardımcı olabilir misiniz ?

Hata :  android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.

3037 Görüntülenme

5 Cevap

Emre
09.02.2015 - 10:47

Farklı bir metot içerisinde kullandığımdada bu hatayı verdi .java.lang.NullPointerException: storage == null

İlk android tecrübem ve son form bu hata yüzünden bitiremedim. 

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Muzaffer Onur DAĞHAN
06.02.2015 - 16:38

Verileri ListView'e asenkron olarak yüklerseniz bu hatayı alırsınız. Asenkron class içinde doInBackground metodunda View üzerinde değişiklik yapılıp yapılmadığını kontrol edin. Sorun bundan kaynaklanıyor gibi görünüyor.

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Emre
06.02.2015 - 10:24

run ile kullandığımda sıkıntı çözülmüş gibiydi ancak şuan yine aynı sorun devam ediyor. Listview içine aktarabiliyorum ve görüyorum yalnız bir iki saniye içinde programı durduyor. 

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Muzaffer Onur DAĞHAN
06.02.2015 - 12:17
NullPointerException hatası mı alıyorsunuz?
Emre
06.02.2015 - 16:09
java.lang.RuntimeException: An error occured while executing doInBackground() bu hatayı veriyor
Muzaffer Onur DAĞHAN
30.01.2015 - 20:35

WebService'den gelen verileri muhtemelen Async olarak alıyorsunuz. ListView'e verilerini BindingAdaptor ile atma işlemi asenkron olarak olursa bu hatayı alırsınız. Veriyi async olarak alıp, globalde bir değişkene atayın. Daha sonra da adaptor ile verileri arkaplanda atmayın. Normak bir metot kullanın. 

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Muhammed ÇOBANOĞLU
29.01.2015 - 14:55

Servisten gelen verilerin indirme işlemi uzun sürdüğü için indirme işlemini arka planda yapan bir thread oluşturulması gerekiyor. Bu yüzden uygulama patlıyor olabilir. Burayı inceleyerek problemi çözebilirsiniz. 

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Emre
29.01.2015 - 17:17
Teşekkür ederim run ile şuan hataya düşmesini engelledim. Ama şu süre sıkıntılı, bunun için bir çözüm yolu var mı süreyi azaltabilir miyiz?
Muhammed ÇOBANOĞLU
29.01.2015 - 23:13
Linki güncelledim. İnceleyebilirsin.

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.