1

私の UIViewController には UIPageViewController が埋め込まれています。ページャには、状況に応じて 5 ~ 38 ページ (各ページは UIViewController サブクラスのインスタンス) を含めることができます。各ページの UI 要素をどれだけ複雑にするかによって、アプリの速度が大幅に低下し、スワイプして次のページに移動するときに非常に遅くなることに気付きました。

いくつかの UITextViews の値を除いて、各ページのビューは同じです。新しいページに対して viewControllerAtIndex が呼び出されるたびに、各ページの viewDidLoad メソッドでビューを構築しています。各ページで同じビューを再利用し、異なるはずのテキスト値を交換する方法が必要だと思います。誰でもこれを行うための戦略を説明できますか?

私が言ったように、すべてのページには一部のテキストの値を除いて同じビュー階層があります。ページ番号に応じていくつかの単純なテキスト値を交換します。

編集

元の投稿で言い忘れたことは、ページ上の要素の数はユーザーが前の画面で行った選択に依存するため、ビューをプログラムで構築していることです。つまり、ユーザーが前の画面 (UIPageViewController に到達する前) で何を選択したかに応じて、5 つの TextView または 10 の TextView などが存在する可能性があります。そうは言っても、初期レイアウトは動的であるため、xib ベースのアプローチが機能するとは思いません。

前もって感謝します!

4

1 に答える 1

0

一度xibから引き出して、それへの強い参照を維持できるxibベースのビューを使用してみましたか。コントローラーのviewDidLoadで、そのビューをこのxibベースビューに設定し、テキストビューに適切なテキストを入力できます。

于 2013-02-10T23:14:26.483 に答える