I'm trying to make a listview filled with json. So far, it worked for me, but when I try to assign the onclicklistener to the list, it marks me an error, any suggestions?
package com.tappmovil.volleytest;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import com.loopj.android.http.*;
import org.json.JSONArray;
import java.util.ArrayList;
import cz.msebera.android.httpclient.Header;
public class lista extends AppCompatActivity {
ListView listado;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lista);
listado = (ListView) findViewById(R.id.listview);
ObtDatos();
}
public void ObtDatos(){
AsyncHttpClient client = new AsyncHttpClient();
String url="http://grupocoder.com/data2.json";
RequestParams parametros = new RequestParams();
parametros.put("Edad",18);
client.post(url, parametros, new AsyncHttpResponseHandler() {
@Override
public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
if(statusCode==200){
CargaLista(ObtDatosJSON(new String(responseBody)));
//llamar a la funcion
}
}
@Override
public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
}
});
}
public void CargaLista(ArrayList<String> datos){
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,datos);
listado.setAdapter(adapter);
}
public ArrayList<String> ObtDatosJSON(String response) {
ArrayList<String> listado = new ArrayList<String>();
try {
JSONArray jsonArray = new JSONArray(response);
String texto;
for (int i=0;i<jsonArray.length();i++){
texto=jsonArray.getJSONObject(i).getString("Nombre") + " "; //+
// jsonArray.getJSONObject(i).getString("Direccion") + " " +
// jsonArray.getJSONObject(i).getString("Telefono") + " " ;
listado.add(texto);
}
} catch(Exception e) {
e.printStackTrace();
}
return listado;
}
}