1
http://hopscriber.com/log.php

this [{"uname":"faith"},{"uname":"losh"},{"uname":"loshi"},{"uname":"test"}] 

我想把它放到列表视图中,但我不知道该怎么做,而且教程中的方法对我来说不是很清楚。

希望有人可以帮助我...

谢谢你

给出上述结果的php

<?php
include "db_config.php";

$sql=mysql_query("SELECT`uname` FROM `user`");
 while($row=mysql_fetch_assoc($sql)) $output[]=$row;
 print(json_encode($output));
 mysql_close();
?>

活动

这是更正后的,但列表视图仅显示 pwd 列....这是为什么呢?

    package hopscriber.com;


public class Menu extends Activity {

    TextView result;
    Intent intent;

    // JSON Node names
    private static final String TAG_Name = null;
    private static final String TAG_Pass = null;

    // contacts JSONArray
    JSONArray contacts = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_menu);

        // Name of the User
        result = (TextView) findViewById(R.id.result);
        intent = getIntent();
        String Naming = intent.getStringExtra("name1");
        result.setText("Hey " + Naming);

        ListView list = (ListView) findViewById(R.id.list);

        try {
            HttpParams params = new BasicHttpParams();
            HttpConnectionParams.setSoTimeout(params, 0);
            HttpClient httpClient = new DefaultHttpClient(params);

            // prepare the HTTP GET call
            HttpGet httpget = new HttpGet("http://hopscriber.com/log.php");
            // get the response entity
            HttpEntity entity = httpClient.execute(httpget).getEntity();

            if (entity != null) {
                // get the response content as a string
                String response = EntityUtils.toString(entity);
                // consume the entity
                entity.consumeContent();

                // When HttpClient instance is no longer needed, shut down the
                // connection manager to ensure immediate deallocation of all
                // system resources
                httpClient.getConnectionManager().shutdown();

                // return the JSON response
                ArrayList<HashMap<String, String>> contactList = new ArrayList<HashMap<String, String>>();

                JSONArray jsonArray = new JSONArray(response.trim());
                if (jsonArray != null) {
                    for (int i = 0; i < jsonArray.length(); i++) {
                        JSONObject object = (JSONObject) jsonArray.get(i);

                        HashMap<String, String> map = new HashMap<String, String>();

                        map.put(TAG_Name, object.getString("uname"));
                        map.put(TAG_Pass, object.getString("pwd"));

                        contactList.add(map);

                    }
                }

                ListAdapter adapter = new SimpleAdapter(this, contactList,
                        R.layout.menu_list_row, new String[] { TAG_Name,
                                TAG_Pass }, new int[] { R.id.LR_Name,
                                R.id.LR_date });
                list.setAdapter(adapter);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }

        // Launching new screen on Selecting Single ListItem
        list.setOnItemClickListener(new OnItemClickListener() {

            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                    long arg3) {
                Toast.makeText(getBaseContext(), "Booyah", Toast.LENGTH_SHORT)
                        .show();
            }
        });
    }

}
4

1 回答 1

1

试试这个,我没有测试它,但我使用不同数据的相同代码并且它有效..

try {
        HttpParams params = new BasicHttpParams();
        HttpConnectionParams.setSoTimeout(params, 0);
        HttpClient httpClient = new DefaultHttpClient(params);

        //prepare the HTTP GET call 
        HttpGet httpget = new HttpGet(urlString);
        //get the response entity
        HttpEntity entity = httpClient.execute(httpget).getEntity();

        if (entity != null) {
            //get the response content as a string
            String response = EntityUtils.toString(entity);
            //consume the entity
            entity.consumeContent();

            // When HttpClient instance is no longer needed, shut down the connection manager to ensure immediate deallocation of all system resources
            httpClient.getConnectionManager().shutdown();

            //return the JSON response
            JSONArray jsonArray = new JSONArray(response.trim());
            if(jsonArray != null) {
               String[] unames = new String[jsonArray.length()];
               for(int i = 0 ; i < jsonArray.length() ; i++) {
                    JSONObject object = (JSONObject) jsonArray.get(i); 
                    unames[i] = object.getString("uname");
               }
               ListAdapter adapter = new SimpleAdapter(this, contactList,
                    R.layout.menu_list_row, unames, new int[] { R.id.LR_Name });
               list.setAdapter(adapter);
            } 
        }
    }catch (Exception e) {
        e.printStackTrace();
    }

要将结果添加到 a ListView,请点击此链接http://www.mkyong.com/android/android-listview-example/传递String[] unames

于 2012-07-13T07:49:57.893 回答