[RN] React Native 实现图片预览

react

[RN] React Native 实现图片预览

效果预览:

代码如下:

'use strict';

import React, {Component} from 'react';

import {Image, StyleSheet, Text, View, ViewPagerAndroid, Dimensions} from 'react-native';

const {width, height} = Dimensions.get("window");

//图片地址

const PAGE_IMAGES = [

'http://a.hiphotos.baidu.com/image/h%3D300/sign=4f5477ac8f26cffc762ab9b289014a7d/b3fb43166d224f4ad8b5722604f790529822d1d3.jpg',

'http://a.hiphotos.baidu.com/image/h%3D300/sign=10b374237f0e0cf3bff748fb3a47f23d/adaf2edda3cc7cd90df1ede83401213fb80e9127.jpg',

'http://e.hiphotos.baidu.com/image/h%3D300/sign=8562b2c234dbb6fd3a5be3263925aba6/8ad4b31c8701a18b536e1476932f07082838fe06.jpg',

'http://a.hiphotos.baidu.com/image/h%3D300/sign=fbe3d9666ed9f2d33f1122ef99ed8a53/3bf33a87e950352a464bc38f5f43fbf2b2118b0b.jpg'

];

export default class TestViewPager extends Component {

constructor(props) {

super(props);

this.state = {

page: 0,

totalPage: PAGE_IMAGES.length,

}

}

onPageSelected = (event) => {

this.setState({

page: event.nativeEvent.position,

});

};

render() {

let pages = [];

let len = this.state.totalPage;

for (let i = 0; i < len; i++) {

pages.push(

<View key={i} collapsable={false}>

<Image

style={styles.image}

source={{uri: PAGE_IMAGES[i]}}

/>

</View>

);

}

return (

<View style={styles.container}>

<ViewPagerAndroid

style={styles.viewPager}

initialPage={0}

onPageSelected={this.onPageSelected}

ref={viewPager => {

this.viewPager = viewPager;

}}

>

{pages}

</ViewPagerAndroid>

<View style={styles.showArea}>

<Text style={styles.showText}>{this.state.page + 1} / {this.state.totalPage}</Text>

</View>

</View>

);

}

}

const styles = StyleSheet.create({

container: {

flex: 1,

backgroundColor: 'black',

},

viewPager: {

width: width,

height: height

},

image: {

resizeMode: "contain",

flex: 1,

width: width

},

showArea: {

position: "absolute",

bottom: 60,

flexDirection: 'row',

width: width,

height: 60,

justifyContent: "center",

alignItems: 'center',

},

showText: {

fontSize: 20,

color: "white"

}

});

本博客地址: wukong1688

本文原文地址:https://www.cnblogs.com/wukong1688/p/11002911.html

转载请著名出处!谢谢~~

以上是 [RN] React Native 实现图片预览 的全部内容, 来源链接: utcz.com/z/381161.html

回到顶部