2016-06-16 2 views
0

Я делаю приложение tvOS, и у меня есть все ViewControllers в NavigationController. Есть несколько уровней приложения, которые имеют «Show» segue для следующего ViewController. У меня есть функция, которая должна запускаться каждый раз, когда отображается представление, поэтому я поместил вызов функции в viewDidAppear, потому что я думал, что он будет вызван, когда я нажму «Menu» на пульте телевизора и возвратится с одного ViewController на родителя. Итак, мой вопрос в том, что является поведением кнопки меню по умолчанию, вызывает ли он вызов функции, к которой я могу получить доступ? В принципе, как я могу вызвать вызов функции в родительском ViewController, когда я нажимаю «Меню» в дочернем элементе, и он возвращается к родительскому.tvOS Menu Button default behavios

Я чувствую, что мой вопрос не имеет смысла, поэтому, если вам нужно разъяснение, пожалуйста, не стесняйтесь спрашивать.

Спасибо!

ответ

1

Вы можете найти поведение по умолчанию кнопки меню в директивах яблонь здесь: https://developer.apple.com/tvos/human-interface-guidelines/remote-and-controllers/

Для того, чтобы понять: Допустим, вы находитесь в 2 контроллера представления, которые вы достигли после того, столкнул с 1-го контроллера представления. Теперь, нажав кнопку «Меню» во втором VC, вы снова вернетесь к 1-му VC. Если вы снова нажмете кнопку Menu в 1-м VC, приложение будет помещено в фоновое изображение, и вы попадете на главный экран Apple TV.

Доступ к части кнопки меню: Я не смог переопределить поведение по умолчанию, но я думаю, что вы можете прослушать его, переопределив метод pressesBegan.

override func pressesBegan(presses: Set<UIPress>, withEvent event: UIPressesEvent?) { 

    switch presses.first!.type { 

     case UIPressType.Menu : // Your code here 
     default : break 

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