Merhaba Özkan.
Fotograflarda yolladığın kodları tam olarak görememekle birlikte JSON String'inden yola çıkarak yardımcı olmaya çalışacağım.
{
"status":"ok",
"count":12,
"post":[
{
"id":265,
"type":"post",
"categories":[
{
"id":8,
"slug":"sebzeli-corbalar",
"title":"Sebzeli \u00c7orbalar"
}
}
}
Şeklinde bir JSON verisi var elimizde var ve bir bu veriyi json adındaki String değişkenine kaydettik.
JSON'a en baştan bir göz atacak olursak;
"status" anahtarı String değerini almış bir JSON Nesnesini,
"count" anahtarı int değerini almış bir JSON Nesnesini,
"post" anahtarı da bir JSON Dizini bize vermektedir.
Bizim bunları kullanabilmek için ;
JSONObject object = new JSONObject(json);
String status = object.getString("status");
int count = object.getInt("count");
JSONArray post = object.getJSONArray("post);
şeklinde kodlayabiliriz. post isimli JSON Dizisinin ilk elemanını inceleyecek olursak ;
"id" anahtarının bir int değerini,
"type" anahtarının bir String değerini,
"categories" anahtarı da bir JSON Dizini bize vermektedir.
bunları kullanabilmek için ise ;
JSONObject ilkEleman = jsonArray.getJSONObject(0);
int id = ilkEleman.getInt("id");
String type = ilkEleman.getString("type");
JSONArray categories = ilkEleman.getJSONArray("categories");
burada jsonArray.getJSONObject(0); yaparak jsonArray dizisinin ilk elemanını aldık. Tıpki bildiğimiz dizilerde olduğu gibi burdaki "0" dizinin index numarasıdır. "0" yerine "1" yapmış olsaydık dizinin ikinci elemanını almış olacaktık.
Evet.. "categories" dizisini de tanımladıktan sonra geriye "title" isimli anahtarın değerini almak kalıyor.
"categories" dizisinde yaptığımız işlemin aynısını burada yapıyoruz.
JSONObject ilkKategori = categories.getJSONObject(0);
String title = ilkKategori.getString("title");
Olayı en basit ve anlaşılır şekliyle anlatmaya çalıştım.
Umarım yardımcı olabilmişimdir..