私の質問は次のようなものでした: https://stackoverflow.com/questions/20919343/php-getting-count-of-how-many-x-and-y-in-a-row-then-getting-other-data-の-x-and
しかし、その後、Android Part から仕事をすることを考えました。だから私はPHPから生成された2つのJSONObjectsを持っています. 最初のオブジェクトには「値」と「合計」の配列があります。2 つ目は、"name"、"surname"、"number" と、さらにいくつかの配列です。次に、2 番目の JSONObject の数値と最初の値を比較する必要があります。いくつかのループを試しましたが、予想どおり double が作成されます。これが私の onPostExecute メソッドです:
protected void onPostExecute(Void result) {
// TODO Auto-generated method stub
super.onPostExecute(result);
pDialog.dismiss();
try {
JSONObject jsonObj = new JSONObject(jsonStr);
JSONObject jsonObj2 = new JSONObject(jsonStr);
// Getting JSON Array node
sonuc = jsonObj.getJSONArray(TAG_BASLIK);
// looping through All Contacts
for (int i = 0; i < sonuc.length(); i++) {
JSONObject c = sonuc.getJSONObject(i);
AdayNumara = c.getString(TAG_OY);
ToplamOy = c.getString(TAG_TOPLAM);
Log.i("Aday Numaraları", AdayNumara);
Log.i("Oy Sayısı", ToplamOy);
pie.addItem(AdayNumara,Float.valueOf(ToplamOy), pRenk.get(i));
adaylar = jsonObj2.getJSONArray(TAG_ADAYLAR);
for(int j=0; j< adaylar.length(); j++){
JSONObject c2 = adaylar.getJSONObject(j);
String no = c2.getString(TAG_NO);
String ad = c2.getString(TAG_AD);
String soyad = c2.getString(TAG_SOYAD);
String resim = c2.getString(TAG_RESIM);
HashMap<String, String> aday = new HashMap<String, String>();
do{
aday.put(TAG_AD, ad);
aday.put(TAG_SOYAD, soyad);
aday.put(TAG_RESIM, resim);
aday.put(TAG_NO, no);
aday.put(TAG_TOPLAM, ToplamOy);
adayList.add(aday);} while(AdayNumara == no);
}
adapter=new LazyAdapter2(SecimSonuclari.this, adayList);
lv.setAdapter(adapter);
}
}catch (JSONException e) {
e.printStackTrace();
}
}
私はAndroidが初めてなので、コードにはおそらく間違ったアプローチがあります。
私が今得ているのは、リストビューの価値です。最初の 2 つは、数直線上で 1 と 1 のように同じ値になります。2 番目のカップルには別の番号があり、2 としましょう。