React Native 基础篇之 ListView 九宫格实现
2017-04-12 14:35
453 查看
/** * Sample React Native App * https://github.com/facebook/react-native * @flow */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, TextInput, ListView, TouchableOpacity, Image, ScrollView, Text, Alert, View } from 'react-native'; //导入数据 import ShareData from "./shareData.json"; //获取屏幕宽度 let Dimensions = require("Dimensions"); let {width} = Dimensions.get('window'); //常量设置 let cols = 3; let cellWH =100; let vMargin = (width-cellWH*cols)/(cols+1); let hMargin = 20; export default class listViewSpeedDial extends Component { constructor(props){ super(props); //1.设置数据源 let ds = new ListView.DataSource({rowHasChanged: (r1, r2) => r1 !== r2}); //2.设置返回数据 this.state = {dataSource:ds.cloneWithRows(ShareData.data)}; thiz = this; } render() { return ( <ListView dataSource={this.state.dataSource} renderRow={this._renderRow} contentContainerStyle={styles.listViewStyle} /> ); } _renderRow(rowData, sectionID, rowID, highlightRow){ return( <TouchableOpacity activeOpacity={0.5} onPress={()=>{thiz._onPress(rowData.title)}}> <View style={styles.innerViewStyle}> <Image source={{uri:rowData.icon}} style={styles.iconStyle}/> <Text>{rowData.title}</Text> </View> </TouchableOpacity> ); } _onPress(e) { alert(">>>点击 "+e); } } const styles = StyleSheet.create({ listViewStyle:{ flexDirection:'row', flexWrap:'wrap', }, iconStyle:{ width:80, height:80, }, innerViewStyle:{ width:cellWH, height:cellWH, marginLeft:vMargin, marginTop:hMargin, alignItems:'center', } });
代码 链接:http://pan.baidu.com/s/1eSpCz4I 密码:18z4
相关文章推荐
- React Native之ListView实现九宫格效果
- React Native之ListView实现九宫格效果
- React Native之ListView实现九宫格效果
- react native listview 实现下拉刷新(RefreshControl)
- React-Native实现ListView组件之上拉刷新实例(iOS和Android通用)
- [ReactNative]淘宝首页app实现原理,listView使用技巧
- react-native ListView 封装 实现 下拉刷新/上拉加载更多
- React Native 之ListView及九宫格布局
- react-native ListView下拉刷新上拉加载实现代码
- React-native IT喵~ ScrollView 嵌套ListView 如何实现上拉加载、下拉刷新
- ReactNative 中 ListView实现GridView效果
- React Native 基础 之ListView实现吸顶效果
- React-Native|实现ListView下拉刷新加载更多
- ReactNative基础(四)了解ListView的使用、实现GridView效果、编写一个真实网络请求案例
- react native 实现ListView的局部更新
- React Native ListView sticky效果实现
- React-Native应用ListView实现上拉下拉刷新效果实践
- ReactNative——UI4.ListView 实现9九宫格
- ReactNative中ListView的实现效果
- React-Native开发(二)-ListView