У меня возникли проблемы с отображением одного из моих JSONObjects в ListView. Я использую стандартный JSON Parser, Async Task и т. Д., И все работает отлично для всех, кроме одной конкретной строки, которая является общей. Вот мои фрагменты кода:Android JSONObject decimal не отображается
JSON:
{
"item": "Item name",
"quantity": "67",
"unit": "m",
"total": "603.00"
},
Android:
if (jsonStr != null) {
try {
JSONObject jsonObj = new JSONObject(jsonStr);
items = jsonObj.getJSONArray(TAG_ITEMS);
for (int a = 0; a < items.length(); a++) {
JSONObject l = items.getJSONObject(a);
String item = l.getString(TAG_ITEM_NAME);
String unit = l.getString(TAG_UNIT);
String total = l.getString(TAG_TOTAL);
String quantity = l.getString(TAG_QUANTITY);
Log.d("item got: ", "> " + item);
Log.d("unit got: ", "> " + unit);
Log.d("total got: ", "> " + total);
Log.d("qty got: ", "> " + quantity);
HashMap<String, String> myItems = new HashMap<String, String>();
myItems.put(TAG_ITEM_NAME, item);
myItems.put(TAG_UNIT, unit);
myItems.put(TAG_TOTAL, total);
myItems.put(TAG_QUANTITY, quantity);
itemList.add(myItems);
}
} catch (JSONException e) {
e.printStackTrace();
}
} else {
Log.e("ServiceHandler", "Couldn't get any data from the url");
}
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
// Dismiss the progress dialog
if (pDialog.isShowing())
pDialog.dismiss();
/**
* Updating parsed JSON data into ListView
* */
ListAdapter adapter = new SimpleAdapter(ItemsActivity.this,
itemList, R.layout.item_list_item,
new String[] { TAG_ITEM_NAME, TAG_UNIT, TAG_TOTAL, TAG_QUANTITY },
new int[] { R.id.itemName, R.id.unit, R.id.total, R.id.quantity});
setListAdapter(adapter);
}
XML:
<TextView
android:id="@+id/itemName"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/total"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/unit"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/quantity"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
Теперь, согласно Бревенчатый, все четыре 'есть', но когда я попытаюсь поместить их в свой ListView, общее число (десятичная цифра) не будет отображаться. Одиночные номера и другие не десятичные числа отображаются отлично, и все это строка в JSON, поэтому почему я не могу отобразить свою итоговую сумму?
Confused ...
Можете ли вы включить, как вы показываете свои значения? Я чувствую запах опечатки. – Marius
@Marius, см. Править – BlueSkyDevs
@ Marius - Я идиот! Код, который я разместил, не был фактическим кодом, но вы были в правильной области. Один из XML TextView не совпадал с R.id.total, поэтому после быстрого изменения он отлично отображен. Спасибо, что помогли мне в правильном направлении! – BlueSkyDevs