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" にすると前に表示される





<selector>
<item android:state_window_focused="false"
android:drawable="@color/transparent" />

<item android:state_focused="true" android:state_enabled="false"
android:state_pressed="true"
android:drawable="@drawable/list_selector_background_disabled" />

<item android:state_focused="true" android:state_enabled="false"
android:drawable="@drawable/list_selector_background_disabled" />

<item android:state_focused="true" android:state_pressed="true"
android:drawable="@drawable/list_selector_background_transition" />

<item android:state_focused="false" android:state_pressed="true"
android:drawable="@drawable/list_selector_background_transition" />

<item android:state_focused="true"
android:drawable="@drawable/list_selector_background_focus" />
</selector>


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


<selector>
<item android:state_selected="true"
android:drawable="@color/transparent" />

<item android:state_selected="false"
android:drawable="#ff00ff00" />
<selector/>

0 件のコメント:

コメントを投稿