componentWillMount(){
BackHandler.addEventListener('hardwareBackPress', this.onBackAndroid);
}
componentWillUnmount() {
BackHandler.removeEventListener('hardwareBackPress', this.onBackAndroid);
}
componentDidMount() {
console.log("目前路由");
console.log(this.props.navigation.state);
}
onBackAndroid = () => {
//這裡的路由資訊是你自己項目中的,通過這個原理,我們還是可以提示一些其他資訊,比如表單沒填寫完整等等
if(this.props.navigation.state.routeName=="Home"){
if (this.lastBackPressed && this.lastBackPressed + 2000 >= Date.now()) {
//最近2秒内按過back鍵,可以退出應用。
// BackHandler.exitApp()
return false
}
this.lastBackPressed = Date.now();
ToastAndroid.show('再按一次退出應用', ToastAndroid.SHORT);
return true;
}else{
return true;
}
};