11 de outubro de 2021 • 1 min de leitura
Desabilitando botão de voltar do hardware: Android e iOS
Como desabitar a função de voltar do botão a nível de hardware dos celulares utilizando o React Native?
Apenas para Android, você irá no seu App.js
e utilizando a API BackHandler e o hook useEffect, você poderá desabilitar o botão de voltar do celular.
import { useEffect } from 'react';
import { BackHandler } from 'react-native';
const App = () => {
...
useEffect(() => {
BackHandler.addEventListener('backPress', () => true)
return () => BackHandler.removeEventListener('backPress', () => true)
}, [])
...
}
export default App;
No iOS você irá nas opções do Stack Navigator, e setar o gestureEnabled
como false
.
Info: O padrão é true
no iOS, e false
no Android.
<Stack.Navigator
initialRouteName="Example Navigator"
screenOptions={{
gestureEnabled: false,
}}
/>
// ou a nível de tela
<Stack.Screen
name="Example Screen"
options={{
gestureEnabled: false,
}}
/>
Fazendo estes dois passos, você desabilitará o botão de voltar do celular tanto no Android quanto no iOS.