1

スクロールビューに大きな画像があるため、アプリケーションで android:largeHeap を使用してメモリを増やしています。そうしないと、アプリケーションがメモリ不足の例外でクラッシュします。

私は 2 つのデバイスを持っています。1 つは Android 4.2 ジェリービーン、もう 1 つは Android 2.3 Gingerbread です。4.2 では android:largeHeap は正常に動作しますが、2.3 では使用できません。

両方のデバイスに満足する方法はありますか? 手伝ってくれてありがとう。

4

3 に答える 3

0

largeHeap パラメータは Honeycomb(3.0) で追加されたため、下位のデバイスでは機能しません。

ただし、largeHeap パラメーターを使用することは解決策ではありません。絶対的な最後の手段として使用する必要があります。余分なヒープを取得するために、Android がバックグラウンド プロセスやアプリを終了することを強制します。

ScrollView に大きな画像があると言います。最初に BitmapFactory を使用して画像を適切にスケーリングしてみましたか?

編集:また、画像を3つに分割したと述べました。各ビットマップが余分なメモリを消費するため、これを行わないでください。代わりに、1 つのビットマップとして保持し、ビットマップ全体でスケーリングを実行します。

于 2013-01-09T09:06:44.560 に答える
0

これはgetLargeMemoryClasss()で使用されると思いますか? これは、API 11 // Android 3 // Honeycomb からのみ利用できます。

補足として、それが必要かどうかはわかりませんが、画像を拡大縮小することはできませんか?

于 2013-01-09T09:07:23.160 に答える
0

メモリ不足エラーが発生せず、アプリケーションのヒープサイズを増やす必要がないように、ビットマップを効率的に使用する方法に関するスタックオーバーフローの詳細な説明を次に示します

于 2013-01-09T09:16:36.817 に答える