React Native – 중첩된 WebView의 반환 처리
import React, { Component } from 'react';
import { WebView, Platform, BackHandler } from 'react-native';
export default class BoxDemo extends Component {
onNavigationStateChange = navState => {
this.setState({
backButtonEnabled: navState.canGoBack
});
};
// //
// _goBackPage = () => {
// // :backButtonEnabled: false, webView , true webView
// if (this.state.backButtonEnabled) {
// this.refs['webView'].goBack();
// } else {//
// this.nav.goBack();
// }
// };
//
componentDidMount() {
if (Platform.OS === 'android') {
BackHandler.addEventListener('hardwareBackPress', this.onBackAndroid);
}
}
onBackAndroid = () => {
// :backButtonEnabled: false, webView , true webView
if (this.state.backButtonEnabled) {
this.refs['webView'].goBack();
return true;
} else {
if (this.lastBackPressed && this.lastBackPressed + 2000 >= Date.now()) {
// 2 back , 。
return false;
}
this.lastBackPressed = Date.now();
ToastAndroid.show(' ', ToastAndroid.SHORT);
return true;
}
};
render() {
return (
);
}
}
원본 주소:http://www.cnblogs.com/zhengyeye/p/8036598.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.