16

ドキュメントによると、 のclipsToBoundsプロパティはUIView描画を境界にクリップします。より正確には、subViewは の境界の外側には描画できませんsuperView

いいように聞こえますが、それは実際には何を意味するのでしょうか?

これをYESに設定するとsubView、 の境界外にない部分のみが自動的に描画されますsuperView。したがって、全体的なパフォーマンスが向上しますか、それとも、目に見えないビューを作成しないようにする必要がありますUIScrollViewか?

4

3 に答える 3

25

逆だと思います。クリッピングをオンにすると、クリッピング マスクを設定する必要があるため、パフォーマンスが低下します。どこかで読んだ記憶があるのですが、今は見つかりません。

于 2009-05-04T16:59:14.007 に答える
0

ビュー階層を知っている場合、(可能な) パフォーマンス ヒットは決定論的です。前述のように、通常、レンダラーは GPU サイクルを使用してビューを描画しますが、階層内の一部のビューでdrawRect:. drawRect:このタイプのアプリでは が省略されているため、これは OpenGL ES アプリケーションには影響しません。

私の理解では、クリップされた領域を決定して表示するのに、ビュー全体を実際に計算/描画/ブレンドするよりも少ないサイクルで済む場合があります。OpenGL ES 2.0の時点で、GPU でクリッピングを計算できます。

于 2012-11-09T00:18:54.827 に答える