使用React 基本组件结合flex 属性,实现简单登录布局UI 效果

效果预览:

项目结构:

loginView.js 文件:
/**
 * Created by admin on 2017-8-8.
 * 登录界面UI
 */

'use strict'
import React, {Component} from 'react';
import {
    AppRegistry,
    StyleSheet,
    Text,
    View,
    Image,
    TextInput, TouchableOpacity,
} from 'react-native';
const portraitUrl = require('./img/icon_after_loading.png');
const sinaUrl = require('./img/sina_blog.png');
const qqUrl = require('./img/tencent_qq.png');
const wxUrl = require('./img/tencent_wechat.png');
let Dimensions= require('Dimensions');
let{width,height,scale}=Dimensions.get('window');
export default class LoginView extends Component {

    render(){

        return(
            <View style={styles.container}>
                {/*头像*/}
                <Image source={portraitUrl} style={styles.style_image}/>
                {/*输入框*/}
                <TextInput
                    autoFocus={true}
                    placeholder={'请输入用户名'}
                    underlineColorAndroid={'transparent'}
                    style={styles.style_textInput}/>
                <View style={{height: 1, backgroundColor: '#f4f4f4'}}/>
                <TextInput
                    placeholder={'请输入密码'}
                    secureTextEntry={true}
                    underlineColorAndroid={'transparent'}
                    style={styles.style_textInput_pwd} />
                <TouchableOpacity activeOpacity={0.5}>
              <View   style={styles.style_text_login}>
                  <Text style={{color:'white'}}>登录</Text>
              </View>
                </TouchableOpacity>
                {/*无法登录&新用户*/}
                <View style={styles.style_setting}>
                    <TouchableOpacity activeOpacity={0.5}>
                    <Text style={styles.style_view_unlogin} >无法登录?</Text>
                    </TouchableOpacity>
                    <TouchableOpacity activeOpacity={0.5}>
                    <Text style={styles.style_view_register}>新用户</Text>
                    </TouchableOpacity>
                </View>
                {/*其他登录方式*/}

                <View style={styles.style_other}>
                    <Text style={styles.style_view_unlogin} >其他登录方式:</Text>
                    <TouchableOpacity activeOpacity={0.5}>
                    <Image source={sinaUrl} style={styles.style_image_other}/>
                    </TouchableOpacity>
                    <TouchableOpacity activeOpacity={0.5}>
                    <Image source={qqUrl} style={styles.style_image_other}/>
                    </TouchableOpacity>
                    <TouchableOpacity activeOpacity={0.5}>
                    <Image source={wxUrl} style={styles.style_image_other}/>
                    </TouchableOpacity>
                </View>

            </View>
        )
    };
}

const styles = StyleSheet.create({

    container:{
        flex:1,

    },
    style_image:{
        marginTop:100,
        height:80,
        width:80,
        alignSelf:'center',
    },
    style_textInput:{
        height:38,
        backgroundColor:'#fff',
        marginTop:50,
        textAlign:'center',

    },
    style_textInput_pwd:{
        height:38,
        backgroundColor:'#fff',
        textAlign:'center',
    },
    style_text_login:{
        width:0.95*width,
        backgroundColor:'#63B8FF',
        marginTop: 40,

        height:45,
        borderRadius: 5,
        justifyContent: 'center',
        alignItems: 'center',
        alignSelf:'center'
    },

    style_setting:{
        //设置主轴方向
        flexDirection:'row',
        //主轴对齐方式
        justifyContent:'space-between',
        paddingTop:20,
    },
    style_view_unlogin: {
        fontSize: 12,
        color: '#63B8FF',
        marginLeft: 10,
    },
    style_view_register: {
        fontSize: 12,
        color: '#63B8FF',
        marginRight: 10,
    },
    style_other:{
        bottom:20,
        //绝对定位
        position:'absolute',
        //主轴的方向
        flexDirection:'row',
        marginTop:50,
        //侧轴对齐方式
        alignItems:'center'
    },
    style_image_other:{
        height:40,
        width:40,
        margin:10,
    },
});


index.android.js:

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

import LoginView from './loginView';
export default class Day0808 extends Component {
    render() {
        return (
            <LoginView/>
        );
    }
}
AppRegistry.registerComponent('Day0808', () => Day0808);

不论大神还是新手,欢迎加QQ群一起讨论问题学习技术:230274309
												

ReactNative——UI1.登录界面样式设置的更多相关文章

  1. webform登陆界面样式丢失

    本文摘抄自:http://blog.csdn.net/sssix/article/details/16945347 请阅读原文. Forms验证——登录界面样式实效? <authenticati ...

  2. jQuery和CSS3炫酷GOOGLE样式的用户登录界面

    这是一款使用jQuery和CSS3打造的GOOGLE样式的用户登录界面特效.该登录界面特效中,右上角的小问号和错误提示小图标使用SVG来制作.username和password输入框採用浮动标签特效. ...

  3. CSS样式案例(2)-制作一个简单的登录界面

    首先来张完工的效果图. 一.html文件如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8 ...

  4. swift项目实战--微博的未登录界面的实现,和监听未登录界面两个按钮的两种实现方法

    1.未登录界面的实现 微博项目中,用户不登录的话,显示的是未登录的界面.项目中TabBarVC的子控制器都是tableViewVC,所以抽取了父类,让父类判断用户是否登录,决定显示什么样的界面.loa ...

  5. iOS开发UI篇—模仿ipad版QQ空间登录界面

    iOS开发UI篇—模仿ipad版QQ空间登录界面 一.实现和步骤 1.一般ipad项目在命名的时候可以加一个HD,标明为高清版 2.设置项目的文件结构,分为home和login两个部分 3.登陆界面的 ...

  6. 萌货猫头鹰登录界面动画iOS实现分析

    动画效果仿自国外网站readme.io的登录界面,超萌可爱的猫头鹰,具体效果如下图所示. 动画实现核心: 动画核心的是用到了iOS中UIView的transform属性,然后根据尺寸坐标对四张图片进行 ...

  7. 基于控制权限和登录验证跳转的django登录界面的实现

    django框架提供了出去登录和退出系统的login和logout的视图函数,本实现中使用系统自带的是视图函数.需要在settings.py,urls.py,views.py和模板文件等几个方面进行考 ...

  8. 仿知乎app登录界面(Material Design设计框架拿来就用的TexnInputLayout)

    在我脑子里还没有Material Design这种概念,就我个人而言,PC端应用扁平化设计必须成为首选,手当其冲的两款即时通讯旺旺和QQ早就完成UI扁平化的更新,然而客户端扁平化的设计本身就存在天生的 ...

  9. 使用Axure RP原型设计实践03,制作一个登录界面的原型

    本篇体验做一个登录界面的原型. 登录页 首先在Page Style里为页面设置背景色. 如果想在页面中加图片,就把Image部件拖入页面,并设置x和y轴.双击页面中的Image部件可以导入图片.在Im ...

随机推荐

  1. GBDT 简述

    GBDT 全称 Gradient Boosting Decision Tree,梯度提升决策树. 梯度增强决策树的思想来源于两个地方,首先是增强算法(Boosting),然后是梯度增强(Gradien ...

  2. _proto_和prototype区别

    推荐一篇阅读:http://cometosay.com/2016/08/31/js-proto.html es中创建对象的方法 (1)对象字面量的方式 (2)new 的方式 (3)ES5中的`Obje ...

  3. Java 常用对象-Math类

    2017-11-02 21:26:18 Math类:Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数. *属性摘要 *常用方法 random() : 返回[0.0,1.0 ...

  4. Java checked 异常 和 RuntimeException(运行时异常)

    目录 一.运行时异常 1.什么是RuntimeExceptioin 2.运行时异常的特点 3.如何运用运行时异常 二.运行时异常和ckecked异常的区别 1.机制上 2.逻辑上 一.运行时异常 1. ...

  5. jsp/post中文乱码问题

    在 iso-8859-1,gb2312, utf-8 以及任意一种编码格式下,英文编码格式都是一样的,每个字符占8位,而中文就麻烦了,在gb2312 下一个中文占 16位,两字节,而在utf-8 下一 ...

  6. python-GUI,生成ssn

    第一次做这个, 样子有点丑,主要是实现功能,做测试的时候,经常要用到身份证号.手机号.姓名等,这里先生成ssn,后续研究怎么做成客户端 代码: from tkinter import * from u ...

  7. WPF 的 数据源属性 和 数据源

    (一)数据源(数据对象)属性 :path 或  path的值(path=VM.Property或M.Property),通常具有通知功能(特例除外). (二)path不能孤立而存在,它一定具有所归属的 ...

  8. php--------对象(object) 与 数组(array) 的转换

    php开发中常常用到数组,sql数据都是数组,数组和对象用的也是比较多的,常常相互转化,数组是PHP的灵魂,非常强大,面向对象编程也是挺方便的. /** * 数组 转 对象 * * @param ar ...

  9. Windows下sklearn源码安装

    简介 在Windows下编译sklearn源码,主要注意二点: 编译环境的搭建 编译顺序 编译环境的搭建 如果环境没有搭建好,最常见的报错,就是"error: Unable to find ...

  10. Oracle性能诊断艺术-读书笔记(范围分区)

    1. PARTITION RANGE SINGLE 注意:操作2 中的 TABLE ACCESS FULL 并不是全表扫描,只是对分区1 做 全分区扫描 case2 2. 分区范围迭代(PARTITI ...