1
デフォルトのArrayAdapterを使用してリストビューを作成しました。しかし、リストからアイテムを選択するには、アイテムだけをタップして、行をタップする必要があります。アイテム自体ではなく、アイテムが入っている行をクリックするには、どうすれば変更できますか?ここでアイテムではなくListViewの行を選択します。
は私のリストビューのコードです:ここで
ListView mListView = (ListView) findViewById(android.R.id.list);
mListView.setAdapter(new ArrayAdapter<String>(this, R.layout.row, ans));
mListView.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View v, int i,
long l) {
Log.d(LOG_TAG,"Selected option"+i);
startActivity(intent);
finish();
}
});
は、リストビューのXMLである:ここで
<ListView
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="250dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:divider="@drawable/list_divider"
android:dividerHeight="1dp" />
はrow.xmlです:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
style="@style/list_answers"
/>
私はあなたのTextViewにそれを追加することを意味しますrow.xmlを追加しましたか? – JustCurious
はいそれはしばしばその正確な問題に対する修正です。私はしばしば 'android:clickable =" false "'を追加しますが、大抵の状況では必要ではありません。 –
行に複数のビューが含まれている場合は、それぞれのビューにそのビューを含めます。 :) –