这里我使用 react-navigation
作为我的导航库。
如何更改特定屏幕的 back
按钮(由 react-navigation
自动添加)功能?
我的意思是,与其在屏幕堆栈中前进一步,我希望它在堆栈中后退 2 步,或者通过提供屏幕名称手动执行(同样仅在一个组件上)。
原文由 greW 发布,翻译遵循 CC BY-SA 4.0 许可协议
这里我使用 react-navigation
作为我的导航库。
如何更改特定屏幕的 back
按钮(由 react-navigation
自动添加)功能?
我的意思是,与其在屏幕堆栈中前进一步,我希望它在堆栈中后退 2 步,或者通过提供屏幕名称手动执行(同样仅在一个组件上)。
原文由 greW 发布,翻译遵循 CC BY-SA 4.0 许可协议
考虑一下,您分别有 3 个屏幕 A、B、C。因此,StackNavigator 中后退按钮的默认功能是:- 如果您在屏幕 C 上按下后退按钮,它将带您到上一个屏幕,即屏幕 B。要覆盖它,您可以在屏幕 C 上执行类似的操作: -
import { HeaderBackButton } from 'react-navigation';
static navigationOptions = ({navigation}) => {
return{
headerLeft:(<HeaderBackButton onPress={()=>{navigation.navigate('A')}}/>)
}
}
原文由 Varun Gupta 发布,翻译遵循 CC BY-SA 4.0 许可协议
1 回答1.6k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
2.3k 阅读
1 回答628 阅读✓ 已解决
930 阅读
890 阅读
您可以使用该屏幕的
navigationOptions
覆盖特定屏幕的后退按钮。您可以在react-navigation
文档 中阅读有关覆盖后退按钮的更多信息来自文档的示例