私は、コンテンツビューでスクロールビュー、コンテンツビュー、およびサブレイヤーとしてCATiledLayer
を保持するビューコントローラを持っています。CATiledLayerの処理を中止しますか?
CATiledLayer
がまだビジー状態(たとえばPDFページをレンダリング中)の間にスーパービューからコントローラビューを削除すると、私は異常なクラッシュとヌル参照を取得します。それはあなたがそれをdisturbe場合CATiledLayer
のように思えます。現在何をやっているのかを中止する方法はありますか?
難しいと言えます。私はMonoTouchを使っています:-) デリゲートは私のコントローラの内部クラスです。私はすでにSOを探してあなたの他の投稿を見つけましたが、それは私のためには機能しません。私はデリゲートをnullに設定しようとしましたが、おそらくMTでそのように動作しないことがあります。 – Krumelur
私は参照してください。私は残念なことにMonoTouchについては考えていません。私が知っていることは、CATiledLayerがバックグラウンドで描画したいものを処理し、次に表示する準備ができたらデリゲートを呼び出すことです。そのデリゲートポインタがnilでなく、ポインタが適切なクラスを指していない場合は、ランダムクラッシュとヌル参照が発生します。 – Altealice
あなたは最後にいた!しかし、私は同時に2番目の問題に直面していました。ページを変更するために、スワイプジェスチャ認識プログラムを使用します。 CocoaTouchには、それが所属するビューがスーパービューから削除されると、認識プログラムのハンドラが2回目にトリガされるバグがあるようです。これはNULLREFを引き起こし、私はそれがCATiledLayerに起因すると考えました。 – Krumelur