实现在WebView中返回上一级
代码
import React, {Component} from 'react';
import {Platform, View, WebView, BackHandler,Dimensions,StyleSheet,Text,ToastAndroid} from 'react-native';
var WEB_URL = "https://www.ly.com/FlightQuery.aspx";
var WEB_VIEW_REF = 'webview';
const {width, height} = Dimensions.get('window');
export default class App extends Component {
constructor(props) {
super(props);
this.state = {
webUrl: WEB_URL,
scalesPageToFit: false,
};
// 添加返回键监听
this.addBackHandlerListener(this.props.navigator);
}
render() {
return (
<View style={styles.container}>
<WebView
style={{width:width,height:height-20,backgroundColor:'white'}}
ref={WEB_VIEW_REF}
source={{uri: this.state.webUrl}}
javaScriptEnabled={true}//是否开启js
domStorageEnabled={true}//是否开启存储
scalesPageToFit={true}//用户是否可以改变页面
startInLoadingState={true}
onNavigationStateChange={this.onNavigationStateChange}
renderLoading={() => {
return <View style={styles.conText}><Text style={styles.txt}>正在加载Loading...</Text></View>
}}
/>
</View>
);
}
// 监听返回键事件
addBackHandlerListener() {
if (Platform.OS === 'android') {
BackHandler.addEventListener('hardwareBackPress', this.onBackHandler);
}
}
onBackHandler = ()=> {//返回true代表不调用默认返回功能,返回false代表退出当前界面。
if (this.state.backButtonEnabled) {
this.refs[WEB_VIEW_REF].goBack();//回退<WebView>控件内部跳转的页面
return true;
} else {
return false;
}
};
onNavigationStateChange = (navState)=> {//WebView内部跳转后状态改变时回调:
this.setState({
backButtonEnabled: navState.canGoBack,//改变this.state.backButtonEnabled状态
});
};
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#f2f2f2',
//paddingTop:20,
},
conText:{
flex: 1,
alignItems: 'center',
justifyContent: 'center'
},
txt:{
fontSize:20,
}
});
实现在WebView中返回上一级的更多相关文章
- UIWebview加载H5界面侧滑返回上一级
一.UIWebview的发现 问题发现:当UIWebview王深层次点击的时候,返回时需要webView执行goBack方法一级一级返回,这样看到的webView只是在该界面执行刷新,并看不到类似iO ...
- 类似IOS的滑动返回上一级,SwipeBackLayout-android的滑动返回类库
最近,公司在开发App的需求中增加了一个新的需求,要在android的页面中增加向右滑动的时候返回上一级页面.我刚知道这个需求的时候,感觉有点坑,可能设计那边最近接触到知乎的客户端或者是IOS的滑动可 ...
- Web 在线文件管理器学习笔记与总结(11)获取文件夹信息 (12)返回上一级操作
(11)获取文件夹信息 文件夹没有修改操作. index.php: <?php require 'dir.func.php'; require 'file.func.php'; require ...
- Android 使用SwipeBackLayout实现滑动返回上一级页面——实战来袭
我们知道.APP在设计上习惯性的把返回button放在屏幕的左上角,那么,在非常多时候(尤其是大屏幕手机),操作改返回button,就会有诸多不便了.为了更加方便实现"返回"功能. ...
- Android 重写物理返回键,在h5页面中返回上一个界面
实现:Activity中放置webview,跳转到h5界面,点击返回键,不退出h5界面,而是返回上一个h5界面 /** * 改写物理按键--返回的逻辑,希望浏览的网页后退而不是退出浏览器 * @par ...
- JS写返回上一级
应产品需求,自己的网站上要有返回上一级的需求,几经周折,做个小总结. (1): $("XX").on("click",function(){ wind ...
- 织梦dedecms返回上一级链接代码
如题:织梦dede手机页面,如果我进入了下一级页面,想回上一级,<a href="xx">该用什么标签? 用JS实现,代码如下 <a href="jav ...
- git bash返回上一级目录
YITU-LIUMZ+Administrator@yitu-liumz MINGW64 ~/learngit/gitskills (dev)$ cd ..\ 注意 cd 后面有空格 然后就会弹出一个 ...
- JavaScript返回上一页和返回上一级页面并刷新
JavaScript返回上一页和刷新当前页 window.history.go(-1); //返回上一页 window.history.back(); //返回上一页 //如果要强行刷新的话就是:wi ...
随机推荐
- form 表单提交、后台的统一处理
配合 form 提交后台 /ajaxSubmit/Submit等通过form提交springMvc下@RequestMapping("/save_oaflow_init")//Re ...
- vue中$refs的使用
vue中$refs获取组件或元素: 获取的元素就相当于是一个原生获取的元素,可以进行操作 this.$refs.ele.style.color = 'red
- 20175212课下作业 MyCP
20175212课下作业 MyCP 要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2 ...
- Cognos集成至portal平台查看报表报错RSV-BBP-0022
1. 问题描述 绝对密切性请求“asynchWait_Request”失败,所请求的会话不存在. 2. 问题分析 Session会话传递失败. 3. 解决方案 将cognos所在服务器地址IP添加进I ...
- Webpack学习-Loader
什么是Loader? 继上两篇文章webpack工作原理介绍(上篇.下篇),我们了解到Loader:模块转换器,也就是将模块的内容按照需求装换成新内容,而且每个Loader的职责都是单一,只会完成一种 ...
- SpringBoot 下 mybatis 的缓存
背景: 说起 mybatis,作为 Java 程序员应该是无人不知,它是常用的数据库访问框架.与 Spring 和 Struts 组成了 Java Web 开发的三剑客--- SSM.当然随着 Spr ...
- 构建web应用之——文件上传
我们通过使用multipart请求数据接收和处理二进制信息(如文件).DispatcherServlet并没有实现任何解析multipart请求数据的功能,它将该任务委托给了Spring中的multi ...
- jdbc模板
public class JdbcTest { public static void main(String[] args) { //数据库连接 Connection connection = nul ...
- day46-python爬虫学习
一.定义 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟 ...
- ImportError libcublas.so.9.0
What to do when you've installed cuda and tensorflow, but you get this error right after you import ...