urlHi 我有这段代码可以从 php 页面接收数据,我想把这些数据放在一个列表视图中。我收到了该数据,并且我已经通过 system.out.println 看到了该数据,但我在列表视图中有白行。代码:
public class Utenti extends ListActivity {
ListView lv;
ListView listView;
static String temp;
//ListAdapter adapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
}
});
Thread t = new Thread(new Runnable (){
public void run() {
//Looper.prepare();
JSONObject json =conn("ketut.php");
try {
//Get the element that holds the earthquakes ( JSONArray )
JSONArray ute = json.getJSONArray("success");
final List<HashMap<String, String>> mylist =
new ArrayList<HashMap<String, String>>();
HashMap<String, String> map = new HashMap<String, String>();
for(int i=0;i < ute.length();i++){
JSONObject e = ute.getJSONObject(i);
System.out.println(e.getString("user"));
map.put("name", e.getString("user"));
mylist.add(map);
}
runOnUiThread(new Runnable() {
public void run() {
ListAdapter adapter = new SimpleAdapter(Utenti.this, mylist , R.layout.utentii,new String[] { "name" },new int[] { 1});
Utenti.this.setListAdapter(adapter);
}
});
} catch (JSONException e) {
System.out.println("4");
e.printStackTrace();
}
}
});
t.start();
// t.start();
}
public static JSONObject conn(String pagina){
HttpURLConnection connection;
OutputStreamWriter request = null;
URL url = null;
String response = null;
JSONObject jArray = null;
try
{
url = new URL("url"+pagina);
connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
connection.setRequestMethod("POST");
String line = "";
InputStreamReader isr = new InputStreamReader(connection.getInputStream());
BufferedReader reader = new BufferedReader(isr);
StringBuilder sb = new StringBuilder();
while ((line = reader.readLine()) != null)
{
sb.append(line + "\n");
}
response = sb.toString();
System.out.println(response);
try{jArray=new JSONObject (response);}
catch(JSONException e){}
isr.close();
reader.close();
}
catch(IOException e)
{
Log.i("NetworkTest","Network Error: " + e);
}
return jArray;
}}
utentii.xml
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:textSize="20sp" >