我正在尝试从my_sq_l数据库中检索数据并在列表视图中显示它。当我使用以下
public class JsonListview extends Activity {
private String jsonresult;
public String url = "http://10.0.2.2/emply.php";
List<Map<String, String>> hotels = new ArrayList<Map<String, String>>();
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_json_listview);
listView = (ListView)findViewById(R.id.listView1);
accessweb();
}
////strating aysntask
public class JsonReadTask extends AsyncTask<String, String, String> {
//strat background
@Override
protected String doInBackground(String... params) {
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(params[0]);
try {
HttpResponse httpResponse = httpClient.execute(httpPost);
jsonresult = InputStreamToString(httpResponse.getEntity().getContent()).toString();
}
catch (ClientProtocolException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
return null;
}
//end background
private StringBuilder InputStreamToString(InputStream is) {
String rline = "";
StringBuilder answer = new StringBuilder();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
try {
while ((rline = rd.readLine()) != null) {
answer.append(rline);
}
}
catch (IOException e) {
e.printStackTrace();
}
return answer;
}
@Override
protected void onPostExecute(String result) {
listdrawer();
}
}
///ending asyntask
////webftn
public void accessweb() {
JsonReadTask task = new JsonReadTask(); task.execute(new String[]{ url });
}
public void listdrawer() {
try {
JSONObject jsonObject = new JSONObject(jsonresult.substring(jsonresult.indexOf("{"), jsonresult.lastIndexOf("}") + 1));
JSONArray jsonArray = jsonObject.optJSONArray("emp_info");
final ArrayList<Map<String, String>> mylist = new ArrayList<Map<String, String>>();
HashMap<String, String> map;
for (int i = 0; i<jsonArray.length(); i++) {
JSONObject c = jsonArray.getJSONObject(i);
map = new HashMap<String, String>();
map.put("Name", c.getString("Name"));
mylist.add(map);
SimpleAdapter adp;
adp = new SimpleAdapter(JsonListview.this,
mylist, R.layout.activity_column, new String[]{ "Name" }, new int[]
{R.id.ColName});
listView.setAdapter(adp);
}
}
catch (JSONException e) {
e.printStackTrace();
}
}
}
我得到了流动的logcat错误:
16524-16544/com.example.numaan.listviewjson W/OpenGLRenderer? Failed to
set EGL_SWAP_BEHAVIOR on surface 0xb3fd7120, error=EGL_SUCCESS