2014年10月23日木曜日

簡単だと思っていたのに、結構ハマったのでメモとして残しておきます

参考にしたのは、次の2つの記事です




重要なのは2点だけ
  1. GridViewの行になっているレイアウトのbackgroundに?android:attr/activatedBackgroundIndicatorを設定する
  2. activatedBackgroundIndicatorをThemeでオリジナルのものに変更する
ただし、APIレベル11以降のお話です

layout.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="horizontal"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:background="?android:attr/activatedBackgroundIndicator"
>
<TextView
 android:layout_width="fill_parent"
 android:layout_height="40dip"
 android:gravity="center"/>
</LinearLayout>


Theme(style.xml)

<style name="AppTheme" parent="AppBaseTheme">
      <item name="android:activatedBackgroundIndicator">@drawable/grid_background</item>
</style>


grid_background.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_activated="true" android:drawable="@color/green" />
    <item android:state_selected="true" android:drawable="@color/green" />
    <item android:state_pressed="true" android:drawable="@color/green" />
    <item android:state_checked="true" android:drawable="@color/green" />
    <item android:drawable="@color/blue" />
</selector>


これはメモなので、詳細は上にあげたサイトを見るのが良いと思います


0 コメント:

コメントを投稿