ReactNative

React Native 其他组件之 WebView

2019-03-20  本文已影响0人  Kevin_小飞象

使用 WebView 组件我们可以通过 url 来加载显示一个网页,也可以传入一段 html 代码来显示。

属性

实例

1. 逻辑代码

import React, { Component } from 'react';
import {
  StyleSheet,
  View,
  WebView,
  StatusBar,
  Text,
  TouchableOpacity
} from 'react-native';
var WEBVIEW_REF = 'webview';
export default class App extends Component { 
  
  render() {
    return (
      <View style={styles.container}>
        <StatusBar
          hidden={false}
        />
        <View style={styles.title_view}>
          <TouchableOpacity
            onPress={this.goBack.bind(this)}
          >
            <Text style={styles.title_text}>
              返回
            </Text>
          </TouchableOpacity>
          <Text style={styles.title_text}>
            duoduo_1101
         </Text>
          <TouchableOpacity
            onPress={this.goForward.bind(this)}
          >
            <Text style={styles.title_text}>
              前进
         </Text>
          </TouchableOpacity>
        </View>

        <WebView
          ref={WEBVIEW_REF}
          source = {
            {
              uri: 'https://www.jianshu.com/u/7ca4b115e1df'
            }
          }
          startInLoadingState={true}
          domStorageEnabled={true}
          javaScriptEnabled={true}
          automaticallyAdjustContentInsets={true}
        />
        </View>
    )
  }

  goBack() {
    this.refs[WEBVIEW_REF].goBack();
  }

  goForward() {
    this.refs[WEBVIEW_REF].goForward();
  }
}

const styles = StyleSheet.create({
  
  container: {
    flex: 1,
    backgroundColor: 'white'
  },
  title_view: {
    flexDirection: 'row',
    height: 50,
    paddingLeft: 15,
    paddingRight: 15,
    justifyContent: 'space-between',
    alignItems: 'center',
    backgroundColor: '#1FB9FF',
  },
  title_text: {
    color: 'white',
    fontSize: 18,
    textAlign: 'center'
  },
  
});

2. 效果图

webview.jpg
上一篇下一篇

猜你喜欢

热点阅读