私はtodoアプリを構築しています。
iOS 5 で導入された新しいストーリーボード オプションを使用しています。
VC がキャッシュされておらず、アプリでパフォーマンスの問題が発生していることに気付きました。
私のアプリの VC の 1 つは「タスクの詳細」というタイトルで、広く使用されています。viewDidLoad: は、画面が表示されるたびに呼び出され、約 1 秒かかります (コードで構築されたかなり複雑な画面です)。
最初はセグエを使用して、この画面に他の画面を接続しました。必要なときはいつでも使用します:
[self performSegueWithIdentifier:@"showTaskDetails" sender:self];
私はそれのモデルを準備します:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender;
その後、パフォーマンスの問題に気付きました。調査したところ、viewDidLoad が何度も読み込まれていることがわかりました。セグエの使用を停止し、TaskDetailsViewController をキャッシュして、モーダルとして手動で追加する必要がありました。ストーリーボードで「人気のある」VC をキャッシュするための解決策があるのだろうか。そうでなければ、機能するがエレガントではない半分半分のソリューションを手に入れることになります-そして、エレガントさは私たちの職業において重要ですよね?;-)