0

私は 3 を持ってUIWebViewUIScrollViewます。ユーザーはこれらの Web ビューを左右にスクロールできます (5 ~ 15 ページ)。ユーザーが 1 ページをスクロールすると、Web ビューを移動し、新しいコンテンツを非表示のコンテンツにロードします。フレームとコンテンツを変更するだけで、Webビューを削除/解放するのではありません。一部のページはキャッシュされており、使用しています

[self loadHTMLString:htmlString baseURL: url];

これらのページをロードするため。

正常に動作しますが、スクロールが速い場合、次のメッセージでアプリがクラッシュしました:

*キャッチされない例外「CALayerInvalidGeometry」が原因でアプリを終了します。理由:「CALayer の位置に NaN が含まれています: [nan nan]」

loadHTMLString行にコメントすると、アプリは正常に動作します...

なぜそれが起こるのですか?修正方法は?

ありがとう、

4

1 に答える 1

1

メモリ警告の電話を受けています。そして、あなたが使用しているいくつかの保持されたオブジェクトはちょうど解放されています. [viewDidLoad] / [viewDidUnload] メソッドを調べて、いつデータが解放されて再利用されるかを確認してください。

ちなみにwebViewsは大量のRAMを使用しています

于 2012-10-09T14:04:52.103 に答える