11

Android SDKに iOS UICollectionViewに相当するものはありますか?

以下のような「テーブル」レイアウトを実装する必要がありますが、多くのセルがあるため (ユーザーは画面をスクロールしてすべてを表示します) 、パフォーマンス上の理由からセルを再利用する必要があります。

+-----------------+----------+--------+
| cell 1          | cell 2   | cell 3 |
+-----------------+--+-------+--+-----+
| cell 4  | cell 5   | cell 6   |
+---------+---+------+-----+----+---------+
| cell 7      | cell 8     | cell 9       |
+-------------+------------+--------------+

行ごとに個別の GridView を使用することを考えていましたが、すべてのテーブルを一度にスクロールする必要があり、セルの再利用がそのように適切に機能するかどうかわかりません。

上記の表を実装する最良の方法は何ですか?

4

3 に答える 3

4

セルを定義済みの幅に設定できる場合は、TwoWayGridViewをチェックしてください。

それ以外の場合、探しているものは AOSP の実験的ブランチにあり、StaggeredGridView と呼ばれます。彼らは実装を開始しましたが、それはかなり若く、準備ができていませんが、どこから始めるべきかについてのヒントを与えるかもしれません.

一般に、これにはさまざまなアプローチがあり、私の経験から、計算のみが必要な既存の API とウィジェットに依存できるようにするために、優れた堅牢なビュー リサイクラーを作成し、自分で再利用する必要がある場合があります。スクロールの幅を変更し、スクロール イベント時にビューが切り離されるか、コンテナーにアタッチされる必要があるときにビューを配置します。

于 2013-02-02T00:18:49.797 に答える
1

よくわかりませんが、問題の解決策はここにあります。

バケットリストアダプタがあなたの質問の解決策だと思います。実装してみて、教えてください。

コメントしてください。コーディングをお楽しみください。:)

更新しました

あなたが言ったようにあなたも好きなことをすることができます。ユーザーが下から上にスクロールしながら、DynamicTableLayoutを作成するだけです。そのため、メモリをあまり消費せず、カスタムビューに基づいてデータも表示されます。このようにして、Scrollがすべてのセルを実行し、メモリの問題も解決します。

于 2013-02-04T06:59:26.690 に答える
1

StaggeredGridViewまたはQuiltViewライブラリが問題の解決に役立つと思います。これらのライブラリを使用して、幅と高さに応じて画像を配置できます

キルトビューを使用している場合はScaleType、 などを変更することでさまざまなスタイルにアレンジできます。

TwoWayGridView はまだ試していませんが、試してみる価値はあります。これが役立つことを願っています.. :)

于 2013-02-06T12:26:05.473 に答える