2015-03-12 4 views
2

Я пытаюсь скрыть/отключить/удалить навигационную панель назад на Apple Watch. Также пытается скрыть строку состояния.Как скрыть/отключить/удалить навигационную панель назад или скрыть строку состояния от часов яблока?

Я толкаю новый InterfaceController как:

[self pushControllerWithName:@"applewatch" context:nil]; 

Кто-нибудь есть какие-либо идеи, как скрыть/отключить/удалить панель навигации или скрыть строку состояния от компании Apple Watch?

+0

See http://stackoverflow.com/questions/28019256/how-to-hide-navigation-bar-back- кнопка/30907556 # 30907556 – AMAN77

ответ

0

В настоящее время не существует способа скрыть встроенные элементы управления навигацией, поэтому я использую reloadRootControllersWithNames: contexts: и передаю любое постоянное состояние приложения через контекст, после чего я возвращаюсь обратно к предыдущему контроллеру при навигации по нему. Это покажет анимацию загрузки страницы, а не push-анимацию, но она работает.

В контроллере 1:

- (void)awakeWithContext:(id)context { 
    [super awakeWithContext:context]; 

    if (context) { 
     // Restore state from context and update any UI 
     [self.controllerVar1 = context objectForKey:@"controllerVar1"]; 
     [self.controllerVar2 = context objectForKey:@"controllerVar2"]; 
    } 
} 

// Call from method that is initiating navigation 
[Controller1 reloadRootControllerWithNames:@[ @"Controller2" ] contexts:@[ @{ @"controllerVar1" : self.controllerVar1, @"controllerVar2" : self.controllerVar2 } ]]; 

В контроллере 2:

- (void)awakeWithContext:(id)context { 
    [super awakeWithContext:context]; 

    self.previousControllerState = context; 
} 

- (void)navigateBack { 
    [Controller2 reloadRootControllerWithNames:@[ @"Controller1" ] contexts:@[self.previousControllerState]]; 

} 
Смежные вопросы