2012-10-07 86 views
1

我正在使用帶有自定義佈局文件的SimpleCursorAdapter。當我嘗試在ListView中填充此佈局時,項目不可點擊。我把佈局文件中的字段的android屬性設置爲clickable來嘗試修復,但它不起作用。使用SimpleCursorAdapter的ListView不可點擊

我認爲默認情況下可點擊屬性爲「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); 

回答

0

1)你的第一個代碼將無法工作,因爲R.mostrador.title不是TextView的的佈局android.R.layout.simple_list_item_1的ID 。嘗試用android.R.id.text1替換它。

2)如果你想在你的ListView選擇一個項目,你應該改變所選項目的背景:

<ListView 
    android:choiceMode="singleChoice" 
    android:drawSelectorOnTop="false" 
    android:listSelector="#cccccc" 
    .../> 
+0

感謝協。當我發佈時,我忘記了更改android.R.id.text1。我試圖按照你的建議去做,但是我的問題依然存在,:(。 – Helios

+0

我刪除了我的項目,並且我寫了一個新的,並且代碼正常工作!XD – Helios

+0

Helios不要忘記接受答案,如果它很好。注意到你對另一個人說「謝謝」,但這是'在此'謝謝'某人的方式。 – vgoff