当我从封闭应用程序中的通知导航时,我可以导航到所需的屏幕。当我点击硬件后退按钮时,应用程序导航到仪表板,但是当我从工具栏标题中的自定义后退按钮返回时,它会导航到仪表板(根据需要),但会立即返回到同一页面。
从通知导航:
this.props.navigation.push("screen", {
data: somedata,
})
导航回仪表板:
this.props.navigation.push('Dashboard')
我也尝试过使用ResetAction函数,但结果相同。
怎么解决这个?
这是因为,你的屏幕没有堆叠那个时间,因为你首先将该屏幕推到堆叠并导航它。并且没有任何通知操作点击,其默认打开应用程序第一个屏幕。
按下通知栏时应使用此代码。
this.props.navigation.navigate('XYZScreen'{itemID:id,fromWhere:"NOTIFICATION"})
此行使用此键params导航到XYZScreen。在那里你可以确定你来自通知。所以根据这个你可以回到任何屏幕。
请使用此代码,它可以帮助我。
因为你没有叠加任何屏幕,请使用替换功能
this.props.navigation.replace('Dashboard')
并且对于硬件反压,在该侦听器功能中使用backHander和相同的代码