webview(Android) 加载h5实体按键(虚拟按键)返回处理

添加onNavigationStateChange方法并判断



/**
 * 是否可以返回
 * @param navState
 */
onNavigationStateChange=(navState)=>{
    this.setState({
        backButtonEnabled: navState.canGoBack
    });
}

添加监听处理

if(Platform.OS==='android'){
    this.backHandler=BackHandler.addEventListener("hardwareBackPress",()=>{
        if (this.state.backButtonEnabled) {
            this.webview.goBack();
            return true;
        } else {
            this.onBack();
        }
    });
}

移除监听

if(Platform.OS==='android') {
    this.backHandler.remove();
}

你可能感兴趣的:(React,Native)