2010年8月30日月曜日

Android 「The world of ListView」 - List selectors -

Google I/O の 「The world of ListView」というセッションを見たので
そのまとめ。

長いので、項目ごとに分けました。
今回は 「List selectors」

--------------------------------------

Google I/O の「The world of ListView」のページは こちら

セッションのスライドはこちら

 agenda

  • Virtualization and adapters

  • Item properties

  • Headers and footers

  • List selectors

  • Other features

  • Gotchas and don'ts


--------------------------------------

List selectors

 • 選択中のアイテムをハイライト
 • タッチモードでは表示されない
   – タッチモードには選択中がない!
 • リスト要素の背後に表示
   – android:drawSelectorOnTop="true" にすると前に表示される




  1. <selector>  
  2.   <item android:state_window_focused="false"  
  3.     android:drawable="@color/transparent" />  
  4.   
  5.   <item android:state_focused="true" android:state_enabled="false"  
  6.     android:state_pressed="true"  
  7.     android:drawable="@drawable/list_selector_background_disabled" />  
  8.   
  9.   <item android:state_focused="true" android:state_enabled="false"  
  10.     android:drawable="@drawable/list_selector_background_disabled" />  
  11.   
  12.   <item android:state_focused="true" android:state_pressed="true"  
  13.     android:drawable="@drawable/list_selector_background_transition" />  
  14.   
  15.   <item android:state_focused="false" android:state_pressed="true"  
  16.     android:drawable="@drawable/list_selector_background_transition" />  
  17.   
  18.   <item android:state_focused="true"  
  19.     android:drawable="@drawable/list_selector_background_focus" />  
  20. </selector>  


 要素(項目)が不透明な場合は、selector drawable を使う
  – convertView.setBackground(R.drawable.selector)

  1. <selector>  
  2.   <item android:state_selected="true"  
  3.     android:drawable="@color/transparent" />  
  4.   
  5.   <item android:state_selected="false"  
  6.     android:drawable="#ff00ff00" />  
  7. <selector/>  

0 件のコメント:

コメントを投稿