1.Android启动页面 思路:新建一个组件作为 Android 的启动页,index.android.js 的初始化窗口改为 Android启动页,设置定时器,使其在1.5秒后自动跳转到 Main 组件. GDLaunchPage.js /** * Android 启动页面 */ import React, { Component } from 'react'; import { StyleSheet, Image, Dimensions, } from 'react-native'; //…
最近由于领导要求写一个手机APP,于是自学开始,不经意间想到使用过的手机APP在打开的时候都是会有一个启动页面,这是如何实现的呢?比较好奇,于是在网上搜到了以下这篇文章,经过个人实验的确可行,不过原文的某些描述并不是十分的清楚,个人也是经过了一些摸索才调试了出来,不管怎么样说这个方法还是蛮不错的,以下给出原文. 原文: http://blog.csdn.net/shiguiyou/article/details/50255929 现在APP的启动页面(Splash Screen)好多都是等待3秒…
前言 当前 React Native 虽说版本更新比较快,各种组件也提供的很全面了,但是在某些情况下,混合开发的方式才会快速缩短开发周期,原因无非就是原生平台的"底蕴"无疑更深,拥有众多且类型丰富的第三方支持库.很多情况下,运用这些库可以避免苦逼的重复劳动.接下来我们以 jpush-react-native 插件为例来看看在 React Native 中如何使用原生的第三方库. 开始 在开始之前,你必须安装以下软件:npm 命令行工具,react-native 命令行工具, Andro…
React Native常用组件在Android和IOS上的不同 一.Text组件在两个平台上的不同表现 1.1 height与fontSize 1.1.1只指定font,不指定height 在这种情况下,Text组件在两个平台上显示都正常. 可以看到,在垂直方向上,Text组件要比字高,上下都留有富余的空间,这样显示出来美观.但如果仔细看,就会发现Android平台的显示下方所留的控件比IOS平台的显示下方所留的空间要小一些.在IOS平台上,上下富余的空间基本相等:而在Android平台上,上…
React Native 键盘管理 在Android TextInput遮盖,上移等问题解决办法 解决办法: 打开android工程,在AndroidManifest.xml中配置如下: <activity android:name=".MainActivity" android:label="@string/app_name" android:configChanges="keyboard|keyboardHidden|orientation|sc…
封装 React Native 原生组件(iOS / Android) 在 React Native中,有很多种丰富的组件了,例如 ScrollView.FlatList.SectionList.Button.Text.Image等: 常用的组件已经可以帮助我们实现并满足日常开发中所遇到的功能需求: 但是产品经理突发奇想还是会提出各种"新奇"的功能: 一些复杂的界面实现,在RN层面变得异常棘手,所以需要我们从原生层去组建View,在RN中完成渲染: https://github.com…
最近在做的采用React Native项目有一个需求,视频直播与直播流播放同一个布局中,带着问题去思考如何实现,能更容易找到问题关键点,下面分析这个控件解决方法: 现在条件:视频播放控件(开源的ijkplayer),直播控件(自定义控件继承自TextureView与SurfaceView) 1.两种控件切换方式? 讲到切换方式,那应该是从一个布局切换到另一个布局,那如何进行布局,可以是两种布局:嵌套布局(直播控件包括播放控件),单独布局(先移除容器的控件后添加所需控件),采用第二种方式进行实现.…
React Native使用props来实现页面间数据传递和通信.在React Native中,有两种方式可以存储和传递数据:props(属性)以及state(状态),其中: props通常是在父组件中指定的,而且一经指定,在被指定的组件的生命周期中则不再改变. state通常是用于存储需要改变的数据,并且当state数据发生更新时,React Native会刷新界面. 了解了props与state的区别之后,读者应该知道,要将首页的数据传递到下一个页面,需要使用props.所以,修改home.…
参考:原文地址 几个月前官方推出了快速创建工具包,由于对React Native不熟悉这里直接使用这2个工具包进行创建 1. create-react-native-app(下文简称CRNA): 2.Expo(原名Exponent). 第一步 .先安装create-react-native-app $ npm install -g create-react-native-app 下一步:创建 native app create-react-native-app nativedemo 等待执行结果…
本文基于React Native 0.52 Demo上传到Git了,有需要可以看看,写了新内容会上传的.Git地址 https://github.com/gingerJY/React-Native-Demo 有写的不对的地方,欢迎批评指正(#^.^#) 一.概述 如下图,展示了一个React Native组件的生命周期,可以分为实例化阶段.存在阶段.销毁阶段. 二.实例化阶段 实例化阶段是最常用的阶段,如下图: 注:① 初始化state,在ES6语法里是写在constructor里面(这句可能不…