• 關於 ConvertView ,請記得要初始話每一個 row ,請參考如何在ListView中使用Holder pattern來重用view的說明

  • 的 element

    android:focusableInTouchMode="true"
    android:focusable="true"
    android:clickable="true"
    android:divider="@null" # 不要有 row 間的水平分隔線
    android:choiceMode="singleChoice" # listview 設定單選
    
  • 裡包的一層 Layout element (e.g. )
    android:descendantFocusability="blocksDescendants"

    不讓這個 layout 裡面的元件取得 focus,可參考ListView裡的OnItemClickListener失去作用(失效)

  • CheckableLayout
    - setBackgroundResource() 改 row 的 backgroundColor
    - 要改裡面的其他原件,用 findViewById() 就可以了

  • ListAdapter
    有查到在 activity 裏,用 listview.setOnItemClickListener 的方式去寫,但是如果在 adapter 也有寫 onClick listener 的話, adapter 裡的這個會優先使用,以至於 activity 裡的那個 listener 失效,當然也有解法,不過這裡沒有採用這種做法

  • Listener 一樣可以放在adapter 裏, view.onClick() 裡要加

    lv.setItemChecked(pos, true);
    

Ps 我用 android:listSelector 不成功

Comments

comments powered by Disqus
Copyright © 2013 Andro Chen
Powered by Logdown and Greyshade
Favicon from The Noun Project