Назад не работает должным образом при переходе от уведомления в закрытом приложении - PullRequest
0 голосов
/ 02 марта 2019

Когда я перемещаюсь из уведомления в закрытом приложении, я могу перейти к нужному экрану.Приложение переходит на панель мониторинга, когда я нажимаю аппаратную кнопку «Назад», но когда я возвращаюсь с пользовательской кнопки «Назад» в заголовке панели инструментов, оно переходит на панель мониторинга (при необходимости), но мгновенно возвращается на ту же страницу.

Навигация из уведомления:

this.props.navigation.push("screen", {
    data: somedata,
})

Переход обратно на панель инструментов:

this.props.navigation.push('Dashboard')

Я также пытался использовать функцию ResetAction, но она имелатакие же результаты.

Как это решить?

Ответы [ 2 ]

0 голосов
/ 02 марта 2019

потому что у вас нет экрана в стеке, используйте функцию замены, напримерthis.props.navigation.replace('Dashboard')

и для аппаратного обратного нажатия используйте backHander и тот же код в этой функции слушателя

0 голосов
/ 02 марта 2019

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

Вы должны использовать этот код, когда вы нажимаете на панели уведомлений.

this.props.navigation.navigate('XYZScreen'{itemID:id,fromWhere:"NOTIFICATION"})

эта строка переместит вас к XYZScreen с этим ключом params.и там вы можете определить, что вы пришли из УВЕДОМЛЕНИЕ .в соответствии с этим вы можете вернуться на любой экран.

Пожалуйста, используйте этот код, он мне помогает.

...