2012-03-30 14 views
0

私たちのアプリケーションでは、UIScrollViewの画像のリストを表示します。すべての画像はHDで表示されます。そのページを2〜3回ロードすると、アプリケーションがクラッシュします。メモリの問題のために。iPadアプリケーションにおけるメモリの問題

どうすればよいですか?

ありがとうございます。

+2

何をすべきか提案:あなたがやっていることや潜在的なメモリリークがどこにあるのかというヒントを得るためにいくつかのコードを投稿してください。 –

+2

コードがない場合は、あなたのUIViewControllerサブクラスのdidReceiveMemoryWarning:メソッドを実装し、その時点でアクティブではないリソースを保持しておくことをお勧めします。 –

+0

いいえ、1つの潜在的なリークはありません。私はスタティックアナライザーでチェックしています。ニュースの一覧をHD画像で表示しています。 – MinuMaster

答えて

2

そのページの外観によっては、UITableViewとして実装することを検討できます。どうして? UITableViewは、現在画面に表示されているものだけを表示するのに優れています。

単純にいくつかのUIImageViewオブジェクトをscrollViewに追加するよりも設定が少し複雑ですが、全体的にパフォーマンスが向上し、オブジェクトのロード/アンロードが管理される可能性があります。

UITableViewオブジェクトは、ユーザーがテーブルをスクロールしていることを決して知らないという点でかなり構成可能です。私はそれらをコンテンツキューイング/デキューシステムと考えています。セットアップにはもう少し時間がかかります。あなたは、例えばなければならないでしょう:

  • はまた、必要に応じてディスクを持っているAsynchronousImageViewを検討
  • (すなわちimageView.image = nilを設定する)ので、あなたのイメージをアンロードするために、あなた自身のUITableViewCellクラスを作成し、prepareForReuseメソッドをオーバーライドキャッシング機能
  • オーバーライド(コンテンツは、デバイスにローカルではない場合)データソース/デリゲートメソッドので、各セルの高さは、正しく計算され、あなたのUIImageViewの寸法

は基本的にのUITableViewを読み取りPRが与えられていることプログラミングガイド、特にUITableViewCellsとコンテンツの提供についての深い知識が必要です。

私はもっと書くつもりですが、あなたがしようとしていることは正確にはわかりません。

0

スタティックアナライザは、計器で漏れ検出を実行するほど近くにありません。さらに、保持循環オブジェクトが見つかるようにするためには、いくつかのステップが必要です。@bbumには素晴らしい投稿があります。over here

関連する問題