React-Native个人信息界面

最近在做一个小练习项目,用户登陆后需要跳转到用户登录信息界面,加班半个小时终于将界面的布局搞定。接触Rect-Native也有一段时间了,以前没有做过ios,只做过android,就布局和开发效率上来说,react-native的给我的感觉是开发效率要大大高于android的。下面是具体的代码:

  1 import React from ‘react-native‘
  2 import Icon from ‘react-native-vector-icons/FontAwesome‘
  3
  4 let {
  5   StyleSheet,
  6   View,
  7   Text,
  8   Image
  9 } = React
 10
 11 var Temp = React.createClass({
 12   render: function () {
 13     return (
 14       <View style={styles.container}>
 15         <View style={styles.viewTop}>
 16           <Text style={styles.txtTitle}>我</Text>
 17           <Icon name=‘cog‘ style={styles.iconSetting} size={20}/>
 18         </View>
 19         <View style={styles.viewUser}>
 20           <View style={styles.viewUserTop}>
 21             <Image style={styles.imgUserTitle} source={require(‘../../assets/tx05.png‘)}/>
 22           </View>
 23           <Text style={styles.txtName}>微风zZ</Text>
 24           <Text style={styles.txtGF}>关注 0   |   粉丝 0</Text>
 25           <View style={styles.viewEdit}>
 26             <Icon name=‘pencil-square-o‘ style={styles.iconEdit} size={15}/>
 27             <Text style={styles.txtEdit}>编辑个人资料</Text>
 28           </View>
 29         </View>
 30         <View style={styles.viewLove}>
 31           <View style={styles.viewLoveTop}>
 32             <Text style={styles.txtCommon}>我的喜爱 1</Text>
 33             <Icon style={styles.iconCommon} name=‘angle-right‘ size={20}/>
 34           </View>
 35           <View style={styles.viewContent}>
 36             <Image style={styles.imgLove} source={require(‘../../assets/recommend1.png‘)}/>
 37           </View>
 38         </View>
 39         <View style={styles.viewCommon}>
 40           <Text style={styles.txtCommon}>我的点评</Text>
 41           <Icon style={styles.iconCommon} name=‘angle-right‘ size={20}/>
 42         </View>
 43         <View style={styles.viewCommon}>
 44           <Text style={styles.txtCommon}>我参与的标签</Text>
 45           <Icon style={styles.iconCommon} name=‘angle-right‘ size={20}/>
 46         </View>
 47       </View>
 48     )
 49   }
 50 })
 51
 52 let styles = StyleSheet.create({
 53   container: {
 54     flex: 1,
 55     backgroundColor: ‘#F0F0F0‘
 56   },
 57   viewTop: {
 58     height: 60,
 59     backgroundColor: ‘#F0F0F0‘,
 60     alignItems: ‘center‘,
 61     borderBottomWidth: 1,
 62     borderBottomColor: ‘#B7B7B7‘,
 63     flexDirection: ‘row‘
 64   },
 65   txtTitle: {
 66     flex: 1,
 67     marginLeft: 10
 68   },
 69   iconSetting: {
 70     marginRight: 10
 71   },
 72   viewUser: {
 73     height: 250,
 74     backgroundColor: ‘#F0F0F0‘
 75   },
 76   viewUserTop: {
 77     height: 100,
 78     alignItems: ‘center‘,
 79     justifyContent: ‘center‘
 80   },
 81   imgUserTitle: {
 82     height: 80,
 83     width: 80,
 84     borderRadius: 40
 85   },
 86   txtName: {
 87     alignSelf: ‘center‘
 88   },
 89   txtGF: {
 90     alignSelf: ‘center‘,
 91     marginTop: 40
 92   },
 93   viewEdit: {
 94     width: 150,
 95     marginTop: 20,
 96     height: 30,
 97     flexDirection: ‘row‘,
 98     alignSelf: ‘center‘,
 99     backgroundColor: ‘#E6E6E6‘,
100     justifyContent: ‘center‘,
101     alignItems: ‘center‘,
102     borderRadius: 10
103   },
104   txtEdit: {
105     marginLeft: 5,
106     alignSelf: ‘center‘,
107     color: ‘#7997C7‘
108   },
109   iconEdit: {
110     color: ‘#7997C7‘,
111     marginTop: 5
112   },
113   viewLove: {
114     height: 150,
115     borderBottomWidth: 10,
116     borderBottomColor: ‘#F0F0F0‘,
117     backgroundColor: ‘ffffff‘
118   },
119   viewLoveTop: {
120     height: 40,
121     flexDirection: ‘row‘,
122     alignItems: ‘center‘
123   },
124   txtCommon: {
125     marginLeft: 15,
126     flex: 1
127   },
128   iconCommon: {
129     marginRight: 10
130   },
131   imgLove: {
132     height: 90,
133     width: 90,
134     margin: 10,
135     marginTop: 0
136   },
137   viewCommon: {
138     height: 50,
139     borderBottomWidth: 10,
140     borderBottomColor: ‘#F0F0F0‘,
141     flexDirection: ‘row‘,
142     alignItems: ‘center‘,
143     backgroundColor: ‘#ffffff‘
144   }
145 })
146
147 module.exports = Temp
时间: 2024-08-25 13:11:02

React-Native个人信息界面的相关文章

React Native之登录界面的布局

版权声明:本文为博主原创文章,未经博主允许不得转载. 代码注释比较详细 /** * Sample React Native App * https://github.com/facebook/react-native * @flow */ import React, {Component} from 'react'; import { AppRegistry, StyleSheet, Text, View, TextInput, Platform, TouchableOpacity, } fro

React Native 调研报告

Facebook三月份开源了React Native iOS平台的框架,让移动开发人员和web开发者都各自兴奋了一把:native的移动开发者想的比较多的估计是Facebook的那句:"learn once, write everywhere",而web开发者兴奋的估计是,不需要学习iOS那陌生的OC或者swift语言,用自己熟悉的javascript语言就可以开发原生的移动APP了.那么新推出的react native 能否承载的了两大阵营的开发者的期待了.本人及同事对react n

腾讯优测优分享 | 探索react native首屏渲染最佳实践

腾讯优测是专业的移动云测试平台,旗下的优分享不定时提供大量移动研发及测试相关的干货~此文主要与以下内容相关,希望对大家有帮助. react native给了我们使用javascript开发原生app的能力,在使用react native完成兴趣部落安卓端发现tab改造后,我们开始对由react native实现的界面进行持续优化.目标只有一个,在享受react native带来的新特性的同时,在体验上无限逼近原生实现.作为一名前端开发,本文会从前端角度,探索react native首屏渲染最佳实

React Native移动开发实战-3-实现页面间的数据传递

React Native使用props来实现页面间数据传递和通信.在React Native中,有两种方式可以存储和传递数据:props(属性)以及state(状态),其中: props通常是在父组件中指定的,而且一经指定,在被指定的组件的生命周期中则不再改变. state通常是用于存储需要改变的数据,并且当state数据发生更新时,React Native会刷新界面. 了解了props与state的区别之后,读者应该知道,要将首页的数据传递到下一个页面,需要使用props.所以,修改home.

探索react native首屏渲染最佳实践

1.前言 react native给了我们使用javascript开发原生app的能力,在使用react native完成兴趣部落安卓端发现tab改造后,我们开始对由react native实现的界面进行持续优化.目标只有一个,在享受react native带来的新特性的同时,在体验上无限逼近原生实现.作为一名前端开发,本文会从前端角度,探索react native首屏渲染最佳实践. 2.首屏耗时计算方法 2.1我们关注的耗时 优化首屏渲染耗时,需要先定义首屏耗时的衡量方法.将react nat

从零开始的Android新项目10 - React Native &amp; Redux

本篇来讲讲 React Native 和 Redux,和其他一上来就啪啪啪丢上来一堆翻译的东西不同,本文会从简单的例子入手,让大家能快速地明白 React Native 是什么,Redux 和常见的 MVC.MVP 等有什么区别,怎么去组织一个 Redux 架构的 React Native 项目. 为避免大家还没入门就放弃,预计下一篇才会从我们项目中的实践出发,讲讲更复杂的应用场景. 什么是React Native React Native 使你能够基于 JavaScript 和 React 在

React Native与夜神模拟器连接第一次白屏没有显示Welcome to React Native

最近在使用React Native由于Android Studio自带的模拟器运行太慢,有时候甚至启不起来.在网上找大家都推荐夜神模拟器,我在安装的时候遇到了第一次ip配置后. 接着回到主页面,怎么刷新都是白屏,不显示react native的欢迎界面,把我困扰很久. 后来发现把夜神模拟器重启一下,react native的欢迎界面就出来,至于什么原理我现在还没搞明白. 解决方法就是:重启夜神模拟器然后打开项目就行了. 原文地址:https://www.cnblogs.com/-1024/p/9

React Native与React的关系及特点

一.React.React.js和React Native的关系 React是基础框架,是一套基础设计实现理念,开发者不能直接使用它来开发移动应用或网页. 在React之上发展出了React.js框架用来开发网页,发展出来React Native用来开发移动应用. 因为React基础框架与React.js框架是同时出现.同时进化发展的,就造成了React基础框架的基本概念.设计思想都是在React.js的相关文档中描述的. 后来,Facebook推出React Native后,也没有把React

React Native之获取通讯录信息并实现类通讯录列表(ios android)

React Native之获取通讯录信息并实现类通讯录列表(ios android) 一,需求分析 1,获取通讯录信息,筛选出通讯录里有多少好友在使用某个应用. 2,获取通讯录信息,实现类通讯录,可拨打电话 发短信等. 二,技术介绍与配置 2.1 技术介绍 1,react-native-contacts地址:https://www.npmjs.com/package/react-native-contacts 2,下载安装:npm install react-native-contacts --

【React Native开发】React Native进行签名打包成Apk

转载请标明出处: http://blog.csdn.net/developer_jiangqq/article/details/50525976 本文出自:[江清清的博客] (一)前言 [好消息]个人网站已经上线运行,后面博客以及技术干货等精彩文章会同步更新,请大家关注收藏:http://www.lcode.org 前几节课程我们对于React Native的一些基础配置,开发工具以及调试,Android项目移植做了相关讲解,今天一起来学习一下另外一个比较重要的知识点,就是React Nativ