RESOLVIDO - Help-me em Array Json aplicativo
Olá galera estou com um problema aqui no meu aplicativo, estou criando um cardápio para restaurante, onde os dados virão lááá do meu banco de dados Mysql.
Olha o meu array | Json como esta sendo retornado.....
Array
(
[0] => Array
(
[id] => 1
[categoria] => Pizzas
[0] => Array
(
[item] => Calabresa
)
[1] => Array
(
[item] => Bacon
)
[2] => Array
(
[item] => 4 Queijos
)
)
[1] => Array
(
[id] => 2
[categoria] => Bebidas
[0] => Array
(
[item] => Breja
)
[1] => Array
(
[item] => Refri
)
[2] => Array
(
[item] => Coca
)
)
[2] => Array
(
[id] => 3
[categoria] => Doces
[0] => Array
(
[item] => Pudim
)
[1] => Array
(
[item] => Pavê
)
[2] => Array
(
[item] => Paçoquinha
)
)
[3] => Array
(
[id] => 4
[categoria] => Combo
[0] => Array
(
[item] => Bacon + Coca
)
[1] => Array
(
[item] => Calabresa + Refri
)
[2] => Array
(
[item] => 4 Queijos + Refri + Pudim
)
)
)
e o meu Json....
[{"id":"1","categoria":"Pizzas","0":{"item":"Calabresa"},"1":{"item":"Bacon"},"2":{"item":"4 Queijos"}},{"id":"2","categoria":"Bebidas","0":{"item":"Breja"},"1":{"item":"Refri"},"2":{"item":"Coca"}},{"id":"3","categoria":"Doces","0":{"item":"Pudim"},"1":{"item":"Pav\u00ea"},"2":{"item":"Pa\u00e7oquinha"}},{"id":"4","categoria":"Combo","0":{"item":"Bacon + Coca"},"1":{"item":"Calabresa + Refri"},"2":{"item":"4 Queijos + Refri + Pudim"}}]
Bom vamos ao problema estou pegando esses dados lá no meu app android com essa função
private void prepareLista(){
lstGrupos = new ArrayList<String>();
lstItensGrupo = new HashMap<String, List<Produto>>();
StringRequest stringRequest = new StringRequest(Request.Method.GET, URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try{
JSONArray pro = new JSONArray(response);
for(int i = 0; i<pro.length();i++){
JSONObject proObj = pro.getJSONObject(i);
lstGrupos.add(proObj.getString("categoria"));
List<Produto> foods = new ArrayList<>();
JSONArray itemArray = new JSONArray(response);
for(int j=0; j<itemArray.length();j++){
JSONObject proItem = itemArray.getJSONObject(j);
foods.add(new Produto(proItem.getString("item"),17.9));
}
lstItensGrupo.put(lstGrupos.get(i),foods);
}
//cria um adaptador (BaseExpandableListAdapter) com os dados acima
listAdapter = new ExpandableListViewAdapter(MainActivity.this, lstGrupos, lstItensGrupo);
//define o apadtador do ExpandableListView
expListView.setAdapter(listAdapter);
}catch (JSONException e){
e.printStackTrace();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(MainActivity.this, error.getMessage(), Toast.LENGTH_LONG).show();
}
});
Volley.newRequestQueue(this).add(stringRequest);
}
bom como vcs viram aí, ele me retorna as categorias Pizzas / Bebidas / Doces / Combo
só que não me retorna os itens destas categorias
e aqui olha se eu deixo assim
foods.add(new Produto(proItem.getString("item"),17.9));
querendo que ele me traga os itens, não me retorna nadica de nada, agora se eu deixo assim
foods.add(new Produto(proItem.getString("categoria"),17.9));
ele me retorna as categorias e como sub-categorias as proprias categorias e não sei como resolver issoDiscussão (1)
Carregando comentários...