Hatena::ブログ(Diary)

数学と英語が苦手なプログラマのBlog

2011-03-23

ListViewをカスタマイズしてみる

検索結果の表を作りたくて、ListViewをカスタマイズしてみました。(作成したAndroidのバージョンは2.1です)

実装方法については

「ListView カスタマイズ」でググるとでてきます。

私はこちらとそのほかのサイトを参考にさせていただきました。

  

【私がカスタムViewを作った手順】

1:親となるListViewを乗せるレイアウトを作る(layout)

2:子レイアウトをCheckableにするためのLinearLayoutを継承してCheckableインタフェースを実装したカスタムLinearLayoutクラスを作る(src)

3:子となるレイアウトを作る(layout)

 このときのLinearLayoutは2で作ったものを使用。

 今回はTextViewを合計4つ乗せてます。(1つは非表示項目)

4:子のためのDto(DataBean)クラスを作る(src)

 今回子は4項目を持つのでDtoプロパティを4つ持たせてます。

5:子を生成するためのArrayAdapterを継承したカスタムAdapterクラスを作る(src)

6:Selectorを作る(drawable)

 Selectorは2のbackgroundに設定

7:親のList用のActivityクラスを作る(src)

 ここでカスタムAdapterを利用してListViewにItemを追加。

 マニュフェストへの追加を忘れずに(すぐ忘れる)

  

【ハマったこと】

・Selector

xmlでの定義方法を誤ると実行時にアプリが落ちます。

最初こちらのサイトを見て実装したのですが上手くいかず・・・。

こちらのサイトで解決しました。

何故こうなのかは謎・・・。

私が考えたSelectorを定義しても、なんか微妙な動きになるので定義をちょっと考えないとだめかも。

あとlist_itemに乗せたTextViewのbackgroundに色を設定すると、Selectorが見えなくなります・・・(´;ω;`)

グリッドっぽくしたかったのですが、これのせいでできず・・・。

ある程度は思った動きができたので、今回はこれで一旦終了です。

  

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証