Android konvertiert JSONObject nach HashMap und zeigt es in ListView mit SimpleAdapter an
Ich versuche zu suchen, um zu konvertierenJSONObject
zuHashMap
aber die meisten Ergebnisse sind für Java und nicht für Android. Daher hoffe ich, dass jemand teilen kann, wenn Sie Erfahrung damit haben.
listview_with_simpleAdapter_and_hashmap.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main4);
String[] food_id= new String[]{"1", "2", "3"};
String[] food_name = new String[]{"apple", "orange", "banana"};
List<HashMap<String, String>> aList = new ArrayList<HashMap<String, String>>();
for (int i = 0; i < 3; i++) {
HashMap<String, String> hm = new HashMap<String, String>();
hm.put("ID", food_id[i]);
hm.put("Name", food_name[i]);
aList.add(hm);
}
String[] from = {"ID", "Name"};
int[] to = {R.id.text_id, R.id.text_name};
SimpleAdapter adapter = new SimpleAdapter(this, aList, R.layout.list_item, from, to);
ListView listView = (ListView) findViewById(R.id.listView);
listView.setAdapter(adapter);
}
Diese Datei funktioniert einwandfrei und zeigt einfach 2 Spalten in jeder Zeile an.
json.java
TextView mTxtDisplay;
String url = "http://192.168.1.103/web_service/omg.php/";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTxtDisplay = (TextView) findViewById(R.id.tv);
JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.GET, url, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
mTxtDisplay.setText(response.toString());
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
// TODO Auto-generated method stub
}
});
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(jsObjRequest);
192.168.1.103 / web_service / omg.php /
{
"32":"Western Food",
"35":"Japanese Food",
"37":"Italian Food"
}
JSON funktioniert auch gut. Das Format ist genau das gleiche wie dasListView
data -> ID und Name.
So meine Frage ist, wie man das @ konvertieJSONObject
im omg.php zu listview_with_simpleAdapter_and_hashmap.java? Ich brauche nur ein einfaches Beispiel.