2011-06-24 6 views
0

UIScrollViewに複数のUIButtonがあります。ボタンに丸みを付けたいので、それぞれのボタンにmaskToBounds:と呼んでいます。私がこれを行い、デバイス上で動くと、スクロールするフレームレートはかなり悪い(シミュレータ上でうまくいく)。この問題の回避策に関するアイデアはありますか?maskToBounds:スクロールパフォーマンスに影響するYES

+0

これはどのデバイスですか? –

答えて

1

あなたは、画面の合成をオフスクリーンで行い、masksToBounds:を呼び出すとかなり遅くなります。カスタムボタンイメージをレンダリングしていますか?その場合は、角を丸くするための最小幅の画像をUIImage -stretchableImageWithLeftCapWidth:topCapHeight:と使用してください。これにより、GPUは可能な限り効率的な方法でイメージを伸ばすことができますが、イメージから作られたボタンを引き続き提供します。 WWDC 2011のビデオには、UIKitのDrawingに関するビデオがあります。この問題を完全に解決すると同時に、あなたが持つ可能性のあるいくつかのものを見てください。

いくつかの代替方法:

+0

私はカスタムボタン画像でレンダリングしていますが、画像がなくても同じ問題があります。 – James

+0

途中でiphoen 3gです – James

+0

このテーブルビューにはいくつの行がありますか? – RyanR

関連する問題