0

クロスワードアプリを作ろうとしています。プレイヤーはズームやスクロールなどを行う必要があるため、ゲームは UIScrollView で実行されます。最大のクロスワードは 21x21 で、441 個のタッチ可能なタイルが必要です。私がこれまでに試したことは、UIView を作成し、それをサブビューとして UIScrollView に追加することでした。次に、441 個のカスタム UIButton を作成して backgroundImage を設定するメソッドを呼び出します。

一部の UIButtons にはカスタム ラベル オーバーレイが必要なので、UILabel を追加して UIButton の上に設定しました。

シミュレーターでアプリを実行するとすべて正常に動作しますが、iPhone 4 でテストすると UIScrollView が大幅に遅れます。

これがその方法かどうかわかりませんか?UIScrollView がデバイスで遅れないように、これを行う方法の正しい方向に私を案内してみてください。

前もって感謝します。

4

2 に答える 2

1

BigUIScrollViewは、によって提供されるような何らかのキャッシュメカニズムなしではスムーズにするのは困難UITableViewです。

ただし、レンダリングを楽​​にするためにできることの1つは、可能な限り不透明な背景を使用することです。ビューを透明にする代わりに、下にあるビューと同じ色にする必要があります。これは役に立ちます。

また、で使用する画像を初期化imageWithContentsOfFile:する代わりにを使用すると、パフォーマンスが向上しました。imageNamed:UIScrollView

于 2012-04-05T11:53:52.200 に答える
0

これらすべてのボタンをメモリに保持しないようにするには、再利用可能なテーブル ビュー セルを使用する必要があります。これにより、スクロールのパフォーマンスが大幅に向上します。これはあなたの人生を楽にする1つのコンポーネントです: DTGridView、他にもあります (あなたはCocoa Controlsをチェックすることができます)

于 2012-04-05T11:31:14.707 に答える