2011-04-02 12 views
1

この問題は他の誰かが遭遇しましたが、私は解決策を見たことがありません - (http://openradar.appspot.com/6941930)を参照してください。表示されている2つのCATiledLayersが問題を引き起こしています。

コンテンツビューのレイヤーに2つのCATiledLayersが含まれているUIScrollViewがあります。 1つのタイルレイヤーは内容を非常に速く描画しますが、drawInRectを作成するには時間がかかりすぎますが、もう一方はゆっくりと描画します。

CATiledLayerのズームが速いほど、デフォルトのLOD設定があり、タイルサイズが大きくなります。

遅いCATiledLayerはズーム可能です。

CATiledLayersの1つだけを使用すると、期待どおりに動作します。

問題は、両方のレイヤーを可視の画面に追加すると、どちらか一方のレイヤーがゆっくりと動作することになります。うんざりすると、通常は速く、はるかに遅くなるコンテンツを作るようです。

1台のCATiledLayerが引き分けを完了したことを確実に知る方法はまだありません。

解決策はタイルレイヤーをキューに入れることだと思うので、タイル張りレイヤーが速くなると遅いタイルレイヤーを描画します。しかし、CATiledLayerのドキュメントはかなり悪いです。

私はNSTimerを使用しようとしましたが、2番目のTiledレイヤーを描画する前に3秒間待機するように設定しました。これは問題を解決するようには思われません!道に迷いました!

答えて

0

CATiledLayerは、画面中央付近のタイルを優先しているようです。おそらく、あなたのレイヤーの1つが端に近いでしょうか?

関連する問題