Android 不能从listview中随机选择数据

Android 不能从listview中随机选择数据,android,listview,hashmap,put,Android,Listview,Hashmap,Put,我有两项活动 第一个活动是将JSON数据从服务器解析到列表视图的活动,第二个活动是显示列表视图中选定值的数据的活动 下面是我第一次活动的onClick方法: /** * Updating parsed JSON data into ListView * */ ListAdapter adapter = new SimpleAdapter(this, userList, R.layout.listitemviewall,

我有两项活动

第一个活动是将JSON数据从服务器解析到
列表视图的活动,第二个活动是显示
列表视图中选定值的数据的活动

下面是我第一次活动的
onClick
方法:

/**
     * Updating parsed JSON data into ListView
     * */
    ListAdapter adapter = new SimpleAdapter(this, userList,
            R.layout.listitemviewall,
            new String[] { "namaresto", "alamatresto"}, 
            new int[] {R.id.name, R.id.address});

    setListAdapter(adapter);

    /**
     * select resto
     */

final ListView lv = getListView();
    lv.setTextFilterEnabled(true);  
    lv.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {              

            /** 
             * move to the next activity 
             * */

            String namanya = ((TextView) findViewById(R.id.name)).getText().toString();
            String alamatnya = ((TextView) findViewById(R.id.address)).getText().toString();

            //Starting a new Intent
            Intent nextScreen = new Intent(getApplicationContext(), InfoTab.class);

            //Sending data to another Activity
            nextScreen.putExtra("name", namanya);
            nextScreen.putExtra("address", alamatnya);

            // starting new activity
            startActivity(nextScreen);


         }
    });
TextView txtname = (TextView) findViewById(R.id.textTEST1);
TextView txtaddress = (TextView) findViewById(R.id.TextTEST2);



    //displaying data from previous activity
    Intent i = getIntent();
    // Receiving the Data
    String name = i.getStringExtra("name");
    String address = i.getStringExtra("address");

    // Displaying Received data
    txtname.setText(name);
    txtaddress.setText(address);
结果,第二个活动始终显示第一条记录!即使我单击了
列表视图中的第二条或其他记录


如何让代码显示在
列表视图中选择的正确记录?

尝试更改以下行:

   String namanya = ((TextView) findViewById(R.id.name)).getText().toString();
        String alamatnya = ((TextView) findViewById(R.id.address)).getText().toString();
致:


告诉我这是否适用于您…

您没有在onItemClick中选择正确的数据。您可以通过执行parent.getItemAtPosition(position)从表示该行的列表中检索对象;在麦克里克的内部。这将为您提供与该行对应的适配器列表中的对象

    String namanya = ((TextView) view.findViewById(R.id.name)).getText().toString();
        String alamatnya = ((TextView)  view.findViewById(R.id.address)).getText().toString();