1

リストビューがあります

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

そして、それにデータを入力しています

SimpleAdapter adapter = new SimpleAdapter(this, data,
                        android.R.layout.simple_list_item_2,
                        new String[] {"name", "dist"},
                        new int[] {android.R.id.text1,
                                   android.R.id.text2});
        poiList.setAdapter(adapter);

この SimpleAdapter では、ListView の各行に項目とサブ項目があります。すべてが完璧に機能します。

次に、ListView に onItemClick を実装します。

poiList.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                long id) {

            String poiName = ((TextView)view).getText().toString();
}
 }

しかし、選択した行のテキストを取得できません。その行(アイテムとサブアイテム)には複数のTextViewがあると思います。それらをどのように参照できますか?

4

2 に答える 2

5

質問を投稿したときにコメントしたように、次を使用する必要があります。

((TextView)(view.findViewById(android.R.id.text1))).getText().toString()

はそれ自体でViewはなくTextView、リスト アイテムのView.

ところで、それがあなたの問題を解決してよかったです。乾杯。

于 2013-04-02T23:00:52.833 に答える