使用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. Cocos2d-x学习笔记(三)main方法

    0. UNREFERENCED_PARAMETER(X)避免编译器关于未引用参数的警告. 下边代码用于屏蔽单个函数的警告: #pragma warning( push ) #pragma warnin ...

  2. c++ 对符合条件的元素进行计数(count_if)

    #include <iostream> // cout #include <algorithm> // count_if #include <vector> // ...

  3. lombok 中的@Data注解

    今天看到有代码中的Dao包中的类文件,写的极其简洁,甚至引起了开发工具InteliJ的报错,然后程序还能稳健地跑起来. import lombok.Data; @Data public class V ...

  4. 解决Word 2013, Word 2016的保存太慢的问题

    尝试下面步骤: 方法 一:文件〉选项〉高级〉,保存,关闭“允许后台保存”选项. 提示:禁止该项功能可能存在风险, 请及时保存文件. 方法二:禁用 Office  中的硬件加速 1.启动任一 Offic ...

  5. vs2010打包安装

    [WinForm] VS2010发布.打包安装程序(超全超详细) 2017年02月17日 21:47:09 y13156556538 阅读数:16487更多 个人分类: C#winform   1. ...

  6. Rspec: feature spec 功能测试 测试JavaScript.

    我们要把应用各组件放在一起做集成 测试,这样才能保证模型和控制器之间能够良好契合. 在 RSpec 中,这种测试称为功能测试(feature spec),有时也称为验收测试(acceptance te ...

  7. 3-8《Ruby元编程》第二章对象模型

    <Ruby元编程> 第二章 对象模型 类定义揭秘inside class definitions: class关键字更像一个作用域操作符,核心作用是可以在里面随时定义方法. [].meth ...

  8. 『科学计算』科学绘图库matplotlib学习之绘制动画

    基础 1.matplotlib绘图函数接收两个等长list,第一个作为集合x坐标,第二个作为集合y坐标 2.基本函数: animation.FuncAnimation(fig, update_poin ...

  9. Linux 下载最新kubectl版本的命令:

    ubuntu centos下通用 第一步.下载最新版本的命令: curl -LO https://storage.googleapis.com/kubernetes-release/release/$ ...

  10. 微信小程序自定义模态框(字体图标)

    组件已经传到github,自行下载:https://github.com/JinZhenZon/miniapp-customModel 支持如下配置: {  outWidth <number&g ...