2

私はアプリを開発して次の問題があります: 各アイテムは次のフィールドから構成されています: 3ロング、2インチ、 3弦。 リストは次のものをサポートする必要があります。 高速スクロール。 フィルターリング。Android非常に巨大なリサイクラビューのアイテムのリスト

データはデータベースにローカルにあり、Webにアクセスする必要はありません。

リストには、膨大な量のデータ(たとえば、1,000,000個のアイテム)が含まれている可能性があります。

メモリとパフォーマンスの点で、これを処理するための最良の方法は何かをお聞きしたいと思います。

オンデマンドでロードするアプローチを使用すると、合理的なパフォーマンスが得られますか? メモリ内のオブジェクトの量が多すぎるとRAMを消費しますか?

この件に関しては、他の意見があります。 事前に感謝し、私の悪い英語については残念です。

答えて

2

答えは、RecyclerView、long、int、およびStringです。パフォーマンスに関しては、RecyclerViewは目に見えなくなったときにビューをリサイクルし、速いスクロールを提供し、キャッシュを使用するとより速くすることができます。また、ビューがリサイクルされたときにビューにnullを設定することもできます。メモリの面では、Integint、Long、Logintなどのint以外の基本オブジェクトを使用してください。

+0

ありがとうございますが、高速スクロールを可能にするためにすべてのデータをメモリに保存するとよいでしょうか?必要に応じてアイテムのチャンクを読み込むことができますか? – user5276077

+0

すべてのデータは、メモリ内のリストに保持されます。これはあなたに影響することはありませんが、一度に50項目以上の怠惰な読み込みをする必要があります。一度に1億のエントリを取得するのは良い考えではありません。最初の50の最後に到着したら、次の50を取得してリストに追加します。もしあなたが好きなら、これを受け入れられた答えとしてマークすることができます。 –

関連する問題