2016-04-10 16 views
0

Webservice'den bir json dizisi alıyorum, ancak değeri textview olarak ayarladığımda yalnızca son değeri alıyorum.Metin görünümü için jsonarray nasıl ayarlanır?

Kod:

JSONObject openhrsjson = new JSONObject(opening_hours); 
String resultOpnHrs = openhrsjson.getString(WEEKDAY_TEXT);        
JSONArray jsonArrayOpnHrs = new JSONArray(resultOpnHrs); 
for (int j = 0; j < jsonArrayOpnHrs.length();j++){ 
    final String openhrs = jsonArrayOpnHrs.getString(j); 
    Log.i("openhrs",openhrs); 
    runOnUiThread(new Runnable() { 
     @Override 
     public void run() { 
      txtOpenHrs.setText(openhrs); 
     } 
    }); 
    } 

Logcat:

I/resultOpnHrs﹕ ["Monday: Open 24 hours","Tuesday: Open 24 hours","Wednesday: Open 24 hours","Thursday: Open 24 hours","Friday: Open 24 hours","Saturday: Open 24 hours","Sunday: Open 24 hours"] 

G/openhrs: Pazartesi: Açık 24 saat G/openhrs: Salı: Açık 24 saat G/openhrs ﹕ Çarşamba: 24 saat açık I/openhrs ﹕ Perşembe: Açık 24 saat I/openhrs ﹕ Cuma: Açık 24 saat I/openhrs ﹕ Cumartesi: Açık 24 saat G/openhrs: Pazar: Açık 24 saat

Nasıl textview bütün dize değerini ayarlamak için?

Teşekkür

+0

Dize s = jsonArray.toString(); –

+0

@RakshitNawani ben köşeli parantez, ters virgül ve virgülle –

cevap

1
o dize openhrs için json dizinin her değer katacak

openhrs + = jsonarrayopenhrs.getstring (j) için dize openhrs değiştirmek

.

neyi sen sen kodunuzda openhrs ait değerini döngü alır her zaman değiştiriliyor yapıyor her zaman

0

şey böyle EditText için ayarlayabilir birden dize veri türü tüm dizesi ekleyin olmalıdır:

StringBuffer result = new StringBuffer(); 
for (int i = 0; i < a.length; i++) { 
result.append(a[i]); 
} 
String mynewstring = result.toString();  

Şimdi EditText için mynewString seti !!

0

Burada gibi metinleri ekleyerek arıyor olabilir Son sonucu almak neden &

txtOpenHrs.setText(""); 

JSONObject openhrsjson = new JSONObject(opening_hours); 
String resultOpnHrs = openhrsjson.getString(WEEKDAY_TEXT);        
JSONArray jsonArrayOpnHrs = new JSONArray(resultOpnHrs); 
for (int j = 0; j < jsonArrayOpnHrs.length();j++){ 
    final String openhrs = jsonArrayOpnHrs.getString(j); 
    Log.i("openhrs",openhrs); 
    runOnUiThread(new Runnable() { 
     @Override 
     public void run() { 
      txtOpenHrs.append(openhrs); //Append texts to textView 

     } 
    }); 
    } 
+0

daha önce bunu yapıyordum, ama ben aynı sonucu alıyorum, köşeli parantez ile sonuç alıyorum ama jsonArrayOpnHrs.toString yaparsanız ben tüm değerleri alıyorum ama [] ve ters virgül –

+0

evet ne olur. –

İlgili konular