0

状態を保存するために iPhone ナビゲーション コントローラーのスタックをシリアル化できますか? それはAppleによって許可されていますか?

4

2 に答える 2

1

スタックの保存は、ナビゲーション コントローラーにプッシュされたコントローラーのリストを読み取り、それらをシリアル化するのと同じくらい簡単です。

NSArray *myStack = [self.navigationController viewControllers]

開発者にそのようなことをしないように要求する Apple の明示的なガイドラインを思い出せません。

于 2011-06-08T05:25:08.327 に答える
0

なぜそれをしたいのか、もっとヒントをいただけますか?これは、ユーザーの選択をナビゲーション コントローラーに保存するためのものですか? 私があなたなら、次のようにしてクラス名を保存します

[[myControllerObj class] description]

NSUserDefaultのような場所に保存します。後でスタックに再度プッシュする場合は、必要です

NSString* className = @"MyControllerClass";
MyControllerClass* obj = (MyControllerClass*) [[NSClassFromString(className) alloc];
[myNavigation pushViewController: obj];

希望が役立ちます

:)

于 2011-06-08T06:26:20.240 に答える