React-навигация: обнаружение нового экрана полностью сфокусировано - PullRequest
0 голосов
/ 25 апреля 2018

В текущей версии реагирующей навигации есть два способа проверить, сфокусирован экран или нет, либо (1) вызывая функцию isFocused опоры экрана navigation, либо (2) подключите компонент к withNavigationFocused и получить реквизит isFocused.

Однако оба метода всегда возвращают true при запуске навигации. В моем случае, что-то должно сработать только после завершения перехода экрана, то есть новый экран полностью сфокусирован. Это относится к детям с тяжелым рендерингом, таким как камера или карта, которые должны отображаться после перехода к экрану, чтобы избежать медленной анимации перехода.

Есть идеи, как этого добиться?

1 Ответ

0 голосов
/ 25 апреля 2018

Вы можете попробовать подписаться на события жизненного цикла навигации, как описано в документах :

const didFocusSubscription = this.props.navigation.addListener(
  'didFocus',
  payload => {
    console.debug('didFocus', payload);
  }
);

Другой пример использования в этом репо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...