2

3つのサブビュー(UIButton)を持つUIViewを作成しました。

次に、これをサブビューとしてcollectionViewに追加しました(メニューのように)

もちろん、これによりFPSの速度が低下します。スクロールパフォーマンスに影響を与えないようにするために、UIViewのレイヤーをラスタライズします。これは意図したとおりに機能しますが、アニメーションが停止したときにUIViewレイヤーを「ラスタライズ解除」して、ボタンを再び使用できるようにします。

任意のヒント?前もって感謝します!

編集:

私が試してみました:

[myView setNeedsLayout];

myView.layer.shouldRasterize = NO;
[myView.layer setNeedsDisplay];
4

2 に答える 2

1

shouldRasterizeビューのlayerプロパティをに設定するのと同じくらい簡単かもしれませんNO

MightyLeaderが指摘したように、修正があなたが試したことにあるという私の疑いは真実であることが判明しました。レイヤーではなく表示:

[myView setNeedsDisplay];
于 2013-03-25T23:00:23.177 に答える
1

レイヤーでsetNeedsDisplayを呼び出さず、ビューで呼び出します:[myView setNeedsDisplay]、これにより、ビューとレイヤー階層が再レンダリングされます。

于 2013-03-27T12:57:28.657 に答える