0

まず、3 つの ViewController があります。1 つは MainViewController として。センター ビュー コントローラーとして 1 つ。左側のメニュー ビュー コントローラーとして 1 つ。アプリケーションを開くと、中央のビューが前面に表示されます (左側のメニューはまだ読み込まれていません)。テーブルビューのスクロールがスムーズに動作します。

しかし、左側のメニュー ビュー コントローラーをメイン ビュー コントローラーの childViewController として追加した後 (左側のメニューを表示するイベント用)。中央のビュー コントローラーでのテーブルビューのスクロールが遅くなります。この問題の原因は何ですか?

--- 解決済み ---

このエラーがchildViewControllerとは関係ないのは私のせいです。これは、centerViewController のビュー レイヤーにエフェクトを追加するためです。

[centerVC.layer setCornerRadius:CORNER_RADIUS];
[centerVC.layer setShadowColor:[UIColor blackColor].CGColor];
[centerVC.layer setShadowOpacity:0.8];
[centerVC.layer setShadowOffset:CGSizeMake(offset, offset)];

中央のビューを中央に戻すときにこれらのレイヤー プロパティを元に戻すと、問題が解決されます。

---その他の検査---

このビューを再度開くと (最初のビューは複雑な UI ではないログイン ビューです)、centerVC のテーブルが通常のスクロールに戻ります。

CPU とメモリは、遅延の状況と遅延の状況の両方で正常です (スクロール <10% の場合は CPU 0% ) (centerVC のメモリは ~20MB で、leftVC を追加すると ~40MB になります)

4

1 に答える 1