web-dev-qa-db-ja.com

Android-グリッドビューまたはリストビュー?

アプリケーションでこの種のビューを作成するにはどうすればよいですか? (スクリーンショットは実際にはAndroidアプリケーションはAndroidマーケットで入手可能)です。

enter image description here

GridviewまたはListViewのいずれかを使用して、同じ種類のレイアウトを作成できると思いますので、混乱しています。

問題:

  • Gridviewで、2つの行の間に区切り文字を付けることはできますか?グリッドビューの各行に背景を与えることはできますか?
  • リストビューでは、背景のある3冊の本を続けてリストビューをカスタマイズできると思います。また、区切り文字を付けることもできます。

専門家の側から、Androidアプリケーション用に同じ種類のレイアウトを設計および作成するための可能な解決策を提案してください。

23
Paresh Mayani

Romain Guy(ListViewの作成者の1人)によって書かれた Shelves のコードを見てください。

彼はGridViewを使用しました:

  • セパレータなし

  • 背景はビットマップドローアブルです

    <ビットマップxmlns:Android = "http://schemas.Android.com/apk/res/Android" Android:src = "@ drawable/shelf_panel" Android:tileMode = "repeat" />

  • 背景画像は次のようになります。

このコードには他の興味深いソリューションも含まれているため、一見の価値があります。

11
balazsbalazs

ListViewを使用すると、各行が要素としてカウントされるため、行内の各項目を個別に保持するロジックで余分な作業が発生します。グリッドビューを使用することをお勧めします。グリッド要素ごとに、背景画像として空の棚スペース(1冊の本用)を保持します。この画像にはシェルフベースが含まれます。したがって、追加の行は必要ありません。画像は次のようになります。

Grid Element Background

2
rajath

述べられた問題:
Gridviewで、2つの行の間に区切り文字を付けることはできますか?グリッドビューの各行に背景を与えることはできますか?

ビューの下部に何かを追加することで、いつでもセパレータを作成できます。側面が「つながる」ようにして、違いがわからないようにします。グリッドアイテムごとに追加のビューが必要になるため、おそらく最良のオプションではありません。

リストビューでは、背景のある3冊の本を続けてリストビューをカスタマイズできると思います。また、区切り文字を付けることもできます。

ええと、はい、何が問題なのかわかりませんが?

2
Nanne

書籍の数が限られている場合は、代わりにグリッドビューとビューフリッパーを使用することをお勧めします。

ビューフリッパーは、スクロールよりも優れた効果をもたらします。

0
Jana