8

スクロールビューと CAtiledLayers を使用するための WDC2010 セッション 104 を見てきましたが、これはすべて非常に優れています。しかし、タイル画像の生成についてはよくわかりません。この例では、カエルのタイルの写真が既に作成されています。しかし、自分で写真を撮る写真アプリを持っている場合、自分でタイルを作成する必要があり、最善の方法がわかりません。

最も簡単な方法は、写真を撮って保存したらすぐに画像を操作して、必要なすべてのタイルを作成することです。しかし、それはすべての写真に対して、より多くのファイルを保存し、より多くのファイル スペースを使用していることを意味します。

写真が必要になる直前に、一時ディレクトリにタイルを作成します。表示部分が終了したら、その一時ディレクトリを削除できます。少なくとも、写真を表示するときは余分なファイル スペースしか使用していません。しかし、画像を読み込んでタイルを作成する際に、ユーザーが気付くような遅延が発生するかどうかは心配です。

4

1 に答える 1

1

タイル化された画像を保存する必要はありません。基本的に、表示されている四角形に基づいて UIImage/CGImage を作成します。

私はここで同様のことをしましたが、非常にうまく機能します。ボーナスは、メモリを非常に効率的に使用できることです。表示されている四角形に基づいて CGImage (大きな画像の小さなタイル) を動的に生成し、TiledLayer は四角形をダンプするときにメモリからそれを削除します。CGImage をファイルに保存することはありません。

このアプローチの欠点は、レンダリングに遅延が発生することです... iphone 3g でのゲームには適していません。

于 2010-10-24T08:29:02.900 に答える