1) React-navigation v2 veya daha yeni sürümlerde geri düğmesinin kaybolmasını sağlamak için:
navigationOptions: {
title: 'MyScreen',
headerLeft: null
}
2) Gezinme yığınını temizlemek istiyorsanız:
Buradan gitmek istediğiniz ekranda olduğunuzu varsayarsak:
React-navigasyon v5 veya daha yeni bir sürümünü kullanıyorsanız navigation.reset
veya kullanabilirsiniz CommonActions.reset
:
navigation.reset({
index: 0,
routes: [{ name: 'Profile' }],
});
Kaynak ve daha fazla bilgi burada: https://reactnavigation.org/docs/navigation-prop/#reset
Veya:
navigation.dispatch(
CommonActions.reset({
index: 1,
routes: [
{ name: 'Home' },
{
name: 'Profile',
params: { user: 'jane' },
},
],
})
);
Kaynak ve daha fazla bilgiyi burada bulabilirsiniz: https://reactnavigation.org/docs/navigation-actions/#reset
React-navigation'ün eski sürümleri için:
v2-v4 kullanımıStackActions.reset(...)
import { StackActions, NavigationActions } from 'react-navigation';
const resetAction = StackActions.reset({
index: 0,
actions: [
NavigationActions.navigate({ routeName: 'myRouteWithDisabledBackFunctionality' }),
],
});
this.props.navigation.dispatch(resetAction);
v1 kullanımıNavigationActions.reset
3) Android için BackHandler'ı kullanarak donanım geri düğmesini de devre dışı bırakmanız gerekecektir. :
http://reactnative.dev/docs/backhandler.html
veya kanca kullanmak istiyorsanız:
https://github.com/react-native-community/hooks#usebackhandler
aksi takdirde, navigasyon yığını boşsa android donanım geri düğmesine basıldığında uygulama kapanacaktır.