我正在使用带有自定义布局文件的SimpleCursorAdapter。当我尝试在 ListView 中填充此布局时,这些项不可单击。我将字段的 android 属性放在布局文件中以供单击以尝试解决此问题,但它不起作用。
我认为默认情况下,可点击属性是"true"。当我使用"android.R.layout.simple_list_item_1"列表中的项目可单击。我认为布局文件中的简单更改不应干扰可点击属性,但这就是我所看到的。
此代码不起作用:
mSelection = mNotesAdapter.fetchAllNotes();
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
R.layout.note_row, mSelection, new String[] { "title"},
new int[] { R.mostrador.title});
setListAdapter(adapter);
此代码有效:
mSelection = mNotesAdapter.fetchAllNotes();
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
android.R.layout.simple_list_item_1, mSelection, new String[] { "title"},
new int[] { R.mostrador.title});
setListAdapter(adapter);
1)您的第一个代码将不起作用R.mostrador.title
因为这不是布局android.R.layout.simple_list_item_1
中文本视图的 ID。尝试将其替换为 android.R.id.text1
.
2)如果要在ListView中选择一个项目,则应更改所选项目的背景:
<ListView
android:choiceMode="singleChoice"
android:drawSelectorOnTop="false"
android:listSelector="#cccccc"
.../>