我用了三天时间实现了一个相对比较完整的React Native 新闻发布类型的示例。应用做得很简单,但大多React Native的组件都有用到,今天做一个分享(由于我电脑是Windows系统,所以只实现了Android部分,没有对iOS做兼容),希望对初学者有用处。

实现界面

  

  

PS:页面实现不多,数据也是静态。

安装启动程序

看完上面的,可以直接到我的Github下载源码在本地跑起来,我这个示例的地址是:

https://github.com/codingforme/react-native-demo-news

1. 下载源码

可以用git clone或直接下载zip包,注意存放路径不要有中文,否则命令执行会出错。

2. 安装node module

进入工程目录安装node module,命令行:

npm install

3. 安装示例

插上真机或开模拟器来安装示例,命令行:

react-native run-android

这样就可以在手机上看到示例效果,可以结合代码学习React Native的开发套路。

PS:这里是我假设你已经装好React Native的开发环境。

额外组件

有些组件官方没有提供(没有Android版或者本身没有),于是我在Github寻找了相应的UI组件来使用,分别有:

1. Tab组件(底部导航):react-native-tab-navigator

https://github.com/exponentjs/react-native-tab-navigator

2. ActionSheet菜单组件:react-native-actionsheet

https://github.com/beefe/react-native-actionsheet

3. 下拉刷新、加载更多列表组件 :react-native-gifted-listview

https://github.com/FaridSafi/react-native-gifted-listview

4. 滑动Tab组件:react-native-scrollable-tab-view

https://github.com/skv-headless/react-native-scrollable-tab-view

PS:没有什么就上Github找,非常方便。

关键代码
1.  页面跳转,Navigator组件使用部分。
2.  Android硬件的back键操作
3.  Android状态栏沉浸式的设置
PS:不做代码解析,可直接查看代码,比较简单。

总结

我很喜欢React Native的开发方式,将页面变为一个个小组件,嵌套而成大组件,从而形成整个应用,它组件化的思想,让我真正粉上了它。

如果迫于混合应用(Hybrid App)的效果差,又没有人手做原生的应用的,真的可以考虑用它。

本文为原创文章,转载请保留原出处,方便溯源,如有错误地方,谢谢指正。

本文地址 :http://www.cnblogs.com/lovesong/p/5678056.html

我的第一个React Native App的更多相关文章

  1. React Native APP结构探索

    APP结构探索 我在Github上找到了一个有登陆界面,能从网上获取新闻信息的开源APP,想来研究一下APP的结构. 附上原网址:我的第一个React Native App 具体来讲,就是研究一个复杂 ...

  2. React Native App设置&Android版发布

    React Native系列 <逻辑性最强的React Native环境搭建与调试> <ReactNative开发工具有这一篇足矣> <解决React Native un ...

  3. [译] Facebook:我们是如何构建第一个跨平台的 React Native APP

    英文原文(需FQ):https://code.facebook.com/posts/1189117404435352/ 早些时候,我们介绍过iOS版的React Native. React Nativ ...

  4. DECO 一个REACT NAtive 开发IDE工具

    DECO 一个REACT NAtive 开发IDE工具. 目前只支持 OS,NO WINDOWS https://www.decosoftware.com/ 一个方便的快速 ERXPRESS 教程:h ...

  5. React Native & app demos

    React Native & app demos https://github.com/ReactNativeNews/React-Native-Apps https://github.com ...

  6. 利用 Create React Native App 快速创建 React Native 应用

    本文介绍的 Create-React-Native-App 是非常 Awesome 的工具,而其背后的 Expo 整个平台也让笔者感觉非常的不错.笔者目前公司是采用 APICloud 进行移动应用开发 ...

  7. 第一个React Native项目

    1>下图操作创建第一个React Native项目: 用Xcode运行界面如下: 记住: 在使用项目文件期间,终端记住不要关闭的哟!!! 改变了程序代码,需要刷新运行,使用快捷键: Comman ...

  8. React Native入门 开发第一个React Native应用

    1. 首先创建一个目录(比如ReactNativeDir),用于存放各个ReactNative工程的代码 2.使用React Native命令工具来创建(初始化)一个ReactNative项目(tes ...

  9. 第一个React Native程序踩到的那些坑

    毫不夸张的说用React Native写一个Hello World !程序是我碰到最复杂的Hello World.网络上的有关的环境搭建相关的文档也很多,但是总是有这样那样的问题. 官方中文版的安装文 ...

随机推荐

  1. iOS开发之ImageView复用实现图片无限轮播

    在上篇博客中iOS开发之多图片无缝滚动组件封装与使用给出了图片无限轮播的实现方案之一,下面在给出另一种解决方案.今天博客中要说的就是在ScrollView上贴两个ImageView, 把ImageVi ...

  2. 相克军_Oracle体系_随堂笔记002-基础

    1.常见的Oracle生产库环境: 图2-1可以说是标准的生产库环境,处处体现了冗余,有效防止了单点故障.这就是HA(高可用) 而且冗在某种条件下还可以去掉,平常实现同时运行提供服务,如果一台坏掉,另 ...

  3. canvas 图片拖拽旋转之二——canvas状态保存(save和restore)

    引言 在上一篇日志“canvas 图片拖拽旋转之一”中,对坐标转换有了比较深入的了解,但是仅仅利用坐标转换实现的拖拽旋转,会改变canvas坐标系的状态,从而影响画布上其他元素的绘制.因此,这个时候需 ...

  4. Cesium原理篇:4Web Workers剖析

    JavaScript是单线程的,又是异步的,而最新的HTML5中,通过Web Workers可以在JS中支持多线程开发.这是几个意思?异步还是单线程,这怎么理解?Web Workers又是什么原理?实 ...

  5. 基于 Hive 的文件格式:RCFile 简介及其应用

    转载自:https://my.oschina.net/leejun2005/blog/280896 Hadoop 作为MR 的开源实现,一直以动态运行解析文件格式并获得比MPP数据库快上几倍的装载速度 ...

  6. 【Python实战】机型自动化标注(搜狗爬虫实现)

    1. 引言 从安卓手机收集上来的机型大都为这样: mi|5 mi|4c mi 4c 2014022 kiw-al10 nem-tl00h 收集的机型大都杂乱无章,不便于做统计分析.因此,标注显得尤为重 ...

  7. Spring Scope:Web项目中如何安全使用有状态的Bean对象?

    Web系统是最常见的Java应用系统之一,现在流行的Web项目多使用ssm或ssh框架,使用spring进行bean的管理,这为我们编写web项目带来了很多方便,通常,我们的controler层使用注 ...

  8. 注册表(C#)

    Windowa注册表是包含Windows安装,用户喜好以及以安装软件和设备的所有配置信息的核心储存库.COM组件必须把它的信息出存在注册表中,才能被客户程序使用.注册表也包含了一些系统配置的信息,这些 ...

  9. 写个C#命令行参数解析的小工具

    最近测试工作做的比较多因此时常要创建一些控制台类型的应用程序.因为程序有不同的参数开关,需要在程序启动的时候通过命令行来给程序传递各种开关和参数.直接操作args有些不方便,所以就写了个解析参数的小工 ...

  10. 艾伦 Visual Studio 批量自动化代码操作工具-VS插件发布

    艾伦 Visual Studio 批量自动化代码操作工具 以下简称--艾伦工具箱. 艾伦工具箱是一个多文件批量处理插件,目的是为了广大开发者提高开发效率,减少项目代码规范化审计,缩短开发者的项目开发周 ...