Я зову страницу параметров как форма листа над ViewController, используя следующий код:viewDidAppear и viewWillAppear не вызывался на IPad
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];
NSString *device = [standardUserDefaults objectForKey:@"Device"];
if ([device isEqualToString:@"iPhone"]) {
Settings_iPhone *screen = [[Settings_iPhone alloc] initWithNibName:nil bundle:nil];
screen.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:screen animated:YES];
[screen release];
}
if ([device isEqualToString:@"iPad"]) {
Settings_iPhone *screen = [[Settings_iPhone alloc] initWithNibName:@"Settings_iPad" bundle:nil];
screen.modalPresentationStyle = UIModalPresentationFormSheet;
screen.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:screen animated:YES];
[screen release];
}
Когда страница настроек вызывается и распущен, viewDidAppear и viewWillAppear являются не вызывается на исходную страницу только на iPad. На iPhone, поскольку он не является листом, он отлично работает, и, кроме того, когда я вызываю страницу настроек на iPad как обычный вид модальности вместо листа формы, они оба вызываются. Пожалуйста помоги. Благодаря!
Ну вы можете использовать делегат выполнить свою задачу, которую вы хотели сделать в вашем viewDidAppear/viewWillAppear. или же смотреть на http://useyourloaf.com/blog/2010/5/3/ipad-modal-view-controllers.html, чтобы понять полный сценарий, как работает ModalViewController. –
в основном, если настройки обновляют любые значения, мне нужно, чтобы эти значения обновлялись на экране, так как я смогу это сделать? – Prajoth
Читайте о KVO .. –