1

私はiOSアプリを開発していますが、そのような混乱が生じる可能性があります。
「グラフィックコンテキストをクリアする」など、Xcodeのいくつかのパラメータを変更した後、別のビューがそれらをオーバーレイすると、すべてのビューがそのようになります。

すべて

これは、キーボード、すべてのUIView、TWTweetComposeViewController、およびビューをオーバーレイするその他のオブジェクトで発生します。

どうなり得るか?

4

2 に答える 2

1

これはAppleのドキュメントからのものです

YES に設定すると、drawRect: メソッドが呼び出される前に、描画バッファーが透明な黒に自動的にクリアされます。この動作により、ビューのコンテンツが再描画されたときに視覚的なアーティファクトが残らないことが保証されます。ビューの opaque プロパティも YES に設定されている場合、ビューの backgroundColor プロパティを nil にすることはできません。そうしないと、描画エラーが発生する可能性があります。このプロパティのデフォルト値は YES です。

このプロパティの値を NO に設定した場合、ビューのコンテンツが drawRect: メソッドで適切に描画されるようにする必要があります。描画コードがすでに十分に最適化されている場合、このプロパティを NO に設定すると、特にビューの一部のみを再描画する必要がある場合のスクロール中に、パフォーマンスが向上する可能性があります。

self.view と呼ぶべきだと思います。viewDidLoad メソッドから clearsContextBeforeDrawing = YES 。Interface builder からオフ/オンにすることもできます (下のスクリーンショット)。

ここに画像の説明を入力

于 2012-09-16T16:49:40.493 に答える
0

フレームワークを変更してView Controllerを管理する問題を解決しました。

この問題は ECSlidingViewController が原因でした:削除してViewDeckに置き換えた後、すべてが魅力のように機能し、アプリケーションははるかに流動的になります。

于 2012-09-17T19:42:07.027 に答える