03-React Native搭建TableView展示界面

新建项目

react-native init MyApp --version 0.44.3

在iOS图片目录里面添加图片
把Wine.json拷贝到项目根目录

直接上代码
index.ios.js

/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 * @flow
 */

import React, { Component } from 'react';
import {
  AppRegistry,
  StyleSheet,
  Text,
  View,
  Image,
  ListView,
  TouchableOpacity,
  AlertIOS
} from 'react-native';

var wine = require('./Wine.json');

var Dimensions = require('Dimensions');
var screenWidth = Dimensions.get('window').width;

var ListViewDemo = React.createClass({
  //设置初始化的值
  getInitialState(){
      // 1.1 设置数据源
      var dataS = new ListView.DataSource({rowHasChanged:(r1, r2) => r1 !== r2});
      // 1.2 设置返回数据
      return{
        dataSource:dataS.cloneWithRows(wine)
      }
   },
  render() {
    return(
      
    );
  },

  // 返回具体的cell
  renderRow(rowData,sectionID,rowID,highlightRow){
    return(
      {AlertIOS.alert('点击了'+rowID+'行')}}>
        
          
          
            
              {rowData.name}
              
            
              ¥{rowData.money}
              
          
        
      
    );
  }
});

const styles = StyleSheet.create({
  cellViewStyle:{
    padding: 10,
    backgroundColor: '#F5FCFF',
    //下划线
    borderBottomWidth:0.5,
    borderBottomColor: '#e8e8e8',

    //确定主轴的方向
    flexDirection: 'row'
  },
  rightViewStyle:{
    //主轴的对齐方式
    justifyContent:'center'
  },
  leftImageStyle:{
    width: 60,
    height: 60,
  },
  topTitleStyle:{
    color: '#222222',
    fontSize: 15,
    width:screenWidth * 0.7,
    marginBottom: 8,

  },
  bottomTitleStyle:{
    color: 'red',
  }
});

AppRegistry.registerComponent('MyApp', () => ListViewDemo);

package.json

{
    "name": "MyApp",
    "version": "0.0.1",
    "private": true,
    "scripts": {
        "start": "node node_modules/react-native/local-cli/cli.js start",
        "test": "jest"
    },
    "dependencies": {
        "react": "16.0.0-alpha.6",
        "react-native": "0.44.3"
    },
    "devDependencies": {
        "babel-jest": "21.2.0",
        "babel-preset-react-native": "4.0.0",
        "jest": "21.2.1",
        "react-test-renderer": "16.0.0-alpha.6"
    },
    "jest": {
        "preset": "react-native"
    }
}
03-React Native搭建TableView展示界面_第1张图片
image.png
03-React Native搭建TableView展示界面_第2张图片
image.png

你可能感兴趣的:(03-React Native搭建TableView展示界面)