2013-07-16 1 views
-1

В моем приложении есть два вида.Переключение представлений без инициализации в iOS

После запуска приложения я переключаю вид с помощью кнопки, как это:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Storyboard" bundle:[NSBundle mainBundle]]; 
UIViewController *view = [storyboard instantiateViewControllerWithIdentifier:@"view_a"]; 

[self presentViewController:view_a animated:NO completion:nil]; 

Но всякий раз, когда я переключите вид приведенный выше код инициализации вид. Я хочу сохранить предыдущий статус представления.

Как я могу решить эту проблему?

ответ

0

instantiateViewControllerWithIdentifier: всегда возвращает новый экземпляр UIViewController.

Вам нужно сохранить ссылку на предыдущую, если вы не хотите создавать ее снова и снова.

0

На iPad это будет представлять второй вид в моде, как это продиктовано видами modalTransitionStyle. Итак, вы можете вернуться к оригиналу, вызвав dismissViewControllerAnimated:completion: на новом ViewController.

На iPhone вы можете использовать UINavigationController в своем раскадровке, чтобы нажимать, а затем нажимать secondViewController.

Пока вы используете раскадровку, вы можете настроить переход туда и выполнить его с помощью - performSegueWithIdentifier:sender: с вашей кнопки. Или, в этом случае, вы можете подключить segue непосредственно к вашей кнопке, и в этом случае переход будет выполняться без дополнительного кода.