zoukankan      html  css  js  c++  java
  • React Native

    一、WebView组件介绍

    使用 WebView 组件我们可以通过 url 来加载显示一个网页,也可以传入一段 html 代码来显示。下面对其主要属性和方法进行介绍。
     

    1,属性介绍

    • source:在 WebView 中载入一段静态的 html 代码或是一个 url(还可以附带一些 header 选项)
    • automaticallyAdjustContentInsets:设置是否自动调整内容。格式:bool
    • contentInset:设置内容所占的尺寸大小。格式:{top:number,left:number,bottom:number,right:number}
    • injectJavaScript:当网页加载之前注入一段 js 代码。其值是字符串形式。
    • startInLoadingState:是否开启页面加载的状态,其值为 true 或者 false。
    • bounces(仅iOS):回弹特性。默认为 true。如果设置为 false,则内容拉到底部或者头部都不回弹。
    • scalesPageToFit(仅iOS):用于设置网页是否缩放自适应到整个屏幕视图,以及用户是否可以改变缩放页面。
    • scrollEnabled(仅iOS):用于设置是否开启页面滚动。
    • domStorageEnabled(仅Android):用于控制是否开启 DOM Storage(存储)。
    • javaScriptEnabled(仅Android):是否开启 JavaScript,在 iOS 中的 WebView 是默认开启的。

    2,方法介绍

    • onNavigationStateChange:当导航状态发生变化的时候调用。
    • onLoadStart:当网页开始加载的时候调用。
    • onError:当网页加载失败的时候调用。
    • onLoad:当网页加载结束的时候调用。
    • onLoadEnd:当网页加载结束调用,不管是成功还是失败。
    • renderLoading:WebView组件正在渲染页面时触发的函数,只有 startInLoadingState 为 true 时该函数才起作用。
    • renderError:监听渲染页面出错的函数。
    • onShouldStartLoadWithRequest(仅iOS):该方法允许拦截 WebView 加载的 URL 地址,进行自定义处理。该方法通过返回 true 或者 falase 来决定是否继续加载该拦截到请求。

    二、WebView组件使用例子

    效果图

    代码

     1 use strict';
     2 import React, { Component } from 'react';
     3 import {
     4     StyleSheet,
     5     View,
     6     WebView,
     7     Dimensions,
     8 } from 'react-native';
     9 
    10 const {width, height} = Dimensions.get('window');
    11 
    12 const url = "http://www.58.com";
    13 export default class App extends Component {
    14 
    15     constructor(props) {
    16         super(props);
    17     }
    18 
    19     render() {
    20         return (
    21             <View style={styles.container}>
    22                 <WebView
    23                     style={{width,height:height-20,backgroundColor:'gray'}}
    24                     source={{uri:url,method: 'GET'}}
    25                     javaScriptEnabled={true}//是否开启js
    26                     domStorageEnabled={true}//是否开启存储
    27                     scalesPageToFit={false}//用户是否可以改变页面
    28                 />
    29             </View>
    30         );
    31     }
    32 }
    33 const styles = StyleSheet.create({
    34     container: {
    35         flex: 1,
    36         backgroundColor: '#f2f2f2',
    37         paddingTop:20,
    38     },
    39 });
    点关注各类It学习资源免费送+V 1153553800
  • 相关阅读:
    HDU 1828 Picture
    HDU 2656 Counting Game
    HDU 3265 Posters
    Android颜色选择器之案例解析
    实现半透明的popupwindow的源码
    用activity实现半透明的、淡入的menu【原创】
    Android webservice的用法详细讲解
    Android Fragments 详细使用详细介绍
    在Android中扫描wifi热点演示实例教程
    用Dialog创建带箭头的对话框
  • 原文地址:https://www.cnblogs.com/binary1010/p/8250140.html
Copyright © 2011-2022 走看看