美文网首页
react-native布局例子

react-native布局例子

作者: FantDing | 来源:发表于2018-08-23 16:28 被阅读0次

一、例子1

import React, {Component} from 'react'; //react本身的
import {Platform, StyleSheet, Text, View} from 'react-native'; //native引入的

class MovieTalk extends Component {
    render() {
        return (
            // 最外面的一层
            <View style={{ flex: 1 }}>
                {/* 顶部-blue */}
                <View style={styles.header}>
                    <View style={styles.headerItem}>
                        <Text>item1</Text>
                    </View>
                    <View style={styles.headerItem}>
                        <Text>item2</Text>
                    </View>
                    <View style={styles.headerItem}>
                        <Text>item3</Text>
                    </View>
                </View>
                {/* 中部 */}
                <View style={styles.contents}></View>
                {/* 底部-gray */}
                <View style={styles.docker}></View>
            </View>
        )
    }
}

let styles = StyleSheet.create({
    header: {
        backgroundColor: "#3476AF",
        height: 200,
        flex: 1,
        flexDirection: "row",
        justifyContent: "space-between",
        alignItems: 'center'
    },
    headerItem: {
        backgroundColor: "red"
    },
    contents: {
        flex: 10
    },
    docker: {
        backgroundColor: "#DBDBDB",
        flex: 1
    }
})

export default MovieTalk
简单布局1

例子2

涉及知识点

  • FaltList
    • 原来的ListView官方抛弃了
    • 配合renderItem
    • 使用keyExtractor指明每个item的key

代码

  • movies.js是把豆瓣API得到的结果默认导出
  • 核心代码
class MovieTalk extends Component {
    render() {
        return (
          <View style={styles.container}>
            <FlatList data={movieList.subjects} renderItem={({item})=><MoiveItem title={item.title} pic={item.images.large} rate={item.rating.average} />} keyExtractor={item=>item.title} />
          </View>
        )
    }
}

class MoiveItem extends Component{
  constructor(props){
    super(props)
    console.log(props.pic)
  }
  render(){
    return (
      <View style={styles.moiveItem}>
        <Image source={{uri:this.props.pic}}  style={styles.moviePic}></Image> 
        <View style={styles.movieInfo}>
          <Text>{this.props.title}</Text>
          <Text>评分: {this.props.rate}</Text>
        </View>
      </View>
    )
  }
}

let styles = StyleSheet.create({
  container:{
    flex:1,
  },
  moiveItem:{
    flexDirection:'row',
    borderWidth: 1,
    borderColor: 'gray',
    marginTop:5,
    height:70,
  },
  moviePic:{
    flex:1
  },
  movieInfo:{
    flex:4,
    paddingLeft:10,
    justifyContent:'center',
  }
})
export default MovieTalk
使用FlatList显示列表

相关文章

  • react-native布局例子

    一、例子1 例子2 涉及知识点 FaltList原来的ListView官方抛弃了配合renderItem使用key...

  • react-native 布局篇

    react-native 布局篇之单位换算(px转dp) react-native 布局篇之flexbox rea...

  • 03-Flexible Box

    概念 React-Native 中所有的布局均采用 Flex 布局。采用 Flex 布局的元素,称为 Flex 容...

  • React-Native中的Flexbox布局简述

    本文只是简单地介绍下在React-Native中,使用CSS的Flex布局方式,完成RN中的控件布局,掌握这个布局...

  • Texture布局例子

    Check out 例子 简单的带有左右对齐的标题 让我们来创建这个布局,我们将会使用到: 一个垂直的 ASSta...

  • React-Native之 Flexbox布局

    React-Native中采用的是Flexbox布局,Flexbox与Android中的LinearLayout有...

  • [React Native 入门]

    react-native code之路 使用Flexbox布局 容器的属性 1、Flex Direction 在组...

  • react-native踩过的坑

    React-native 1.Text文本中插入图片:View用弹性布局 ...

  • css:flexbox 基本属性详解

    现在大部分浏览器都支持flexbox布局方法。react和react-native中几乎全部采用flex来布局。简...

  • react-native 布局篇之flexbox

    FlexBox布局 直接阅读大神文章:阮一峰写的FlexBox布局。在react-native中原理是一样的,只不...

网友评论

      本文标题:react-native布局例子

      本文链接:https://www.haomeiwen.com/subject/yjdmiftx.html