0

SimpleAdapter を使用して頭を丸めようとしていますが、1 つの項目に苦労しています。

選択したビューのデータの配列を返すにはどうすればよいですか?

これを生成するために使用するコードを次に示します。

// Data for List Adapter
List<Map<String, Object>> resourceNames = new ArrayList<Map<String, Object>>();

// Make Hashmap of Results Hashmaps
generateData(resourceNames);

//Source information from Hashmap keys (FROM)
String keynames[]={"names","descriptions"};

// Target Views for Data (TO) 
int[] targets = new int[] { R.id.textfield_name,R.id.textfield_description};

// Create my Simple Adapter
SimpleAdapter adapter = new SimpleAdapter(this, resourceNames,
        R.layout.listrow, keynames,targets
        );

setListAdapter(adapter);

}

次に、次のコードを使用して onclick リスナーを使用してデータを取得します。

setContentView(R.layout.listview);


final ListView listView = getListView();
listView.setOnItemClickListener(new OnItemClickListener() {


    public void onItemClick(AdapterView<?> arg0, View arg1, int position,
            long arg3) {
        Toast.makeText(arg1.getContext(),
                getString(R.string.selected) + " " + position,
                Toast.LENGTH_SHORT).show();

        // How do I return the entire data that I used                  
        }
});

上記で、配列内のデータの位置を取得する方法を確認できますが、ビューに表示されている実際の結果データを返すにはどうすればよいですか??

4

1 に答える 1

0

宣言するList<Map<String, Object>> resourceNames = new ArrayList<Map<String, Object>>();

グローバルに、ListView のonItemClick()just put 行に、

Map<String, Object> map = resourceNames.get(position);
于 2012-04-21T07:32:35.110 に答える