react-native-vector-icons的简单使用,图片,按钮,标签视图,导航条
ICONS是可以直接使用图片名, 就能加载图片的三方,使用很方便, 你不需要在工程文件夹里塞各种图片, 节省很多空间,下面就来看看怎么使用吧!
1. 首先打开terminal进入到我们的工程文件夹下, (不会创建工程的请参考:http://blog.csdn.net/margaret_mo/article/details/51304062)
输入: npm install react-native-vector-icons --save (回车)
输入: npm install rnpm -g
输入: rnpm link (回车)
2. 在Finder中用Xcode打开工程: .../Demo/ios/Demo.xcodeproj
(1).右键工程文件Add Files to "(你工程名)"
(2).选择node_modules/react-native-vector-icons/Fonts文件
(3).点击"完成".


3. 在xcode的Info.plist文件中,加入: Fonts provided by application数组,并加入以下9项:
 
到此环境就算设置好了, 接下来就是使用ICONS了.
4. 在Finder中右键用Atom打开工程:

5.然后就开始编辑我们的程序了:
'use strict';
import React, {
  AppRegistry,
  Component,
  View,
  StyleSheet,
  AlertIOS,
  Text,
  TabBarIOS,
  NavigatorIOS,
} from 'react-native';
var Icon = require('react-native-vector-icons/FontAwesome');
import FindComponent from './FindComponent';
import SearchComponent from './SearchComponent';
class Demo extends Component {
  state = {
    selectedTab: 'find',
  };
  loginWithFacebook = () => {   //点击"Login with Facebook"按钮后触发的方法
    AlertIOS.alert("facebook");
  }
  render() {
    return (
      <View style={styles.container}>
        <Icon
          name="rocket"   //图片名连接,可以到这个网址搜索:http://ionicons.com/, 使用时:去掉前面的 "icon-" !!!!
          size={30}   //图片大小
          color="red"  //图片颜色
          />
        <Icon.Button    //在图片后加文字
          name="facebook"
          backgroundColor="#3b5998"
          onPress={this.loginWithFacebook} //点击该按钮后触发的方法
          >
          Login with Facebook
        </Icon.Button>
        <Icon.Button  //在图片后加, 自定义样式的文字
          name="facebook"
          backgroundColor="#3b5998">
          <Text style={{fontFamily: 'Arial', fontSize: 15}}>Login with Facebook</Text>
        </Icon.Button>
        <TabBarIOS    //和标签视图一起使用
         tintColor="#4977f0"
         barTintColor="#E6E6E6">
         <Icon.TabBarItem  //用 Icon.TabBarItem 代替 TabBarIOS.Item
           title="发现"
           iconName="home"
           selectedIconName="home"
           selected = {this.state.selectedTab === 'find'}
           onPress={() => {
             this.setState({
               selectedTab: 'find',
             });
           }}>
           <NavigatorIOS    //导航栏
             style={styles.container}
             tintColor='#FFFFFF'
             barTintColor='#4977f0'
             initialRoute={{
               title: "发现",
               titleTextColor: 'white',
               component: FindComponent
             }}/>
         </Icon.TabBarItem>
         <Icon.TabBarItem  //用 Icon.TabBarItem 代替 TabBarIOS.Item
           title="搜索"
           iconName="search"
           selectedIconName="search"
           selected = {this.state.selectedTab === 'search'}
           onPress={() => {
             this.setState({
               selectedTab: 'search',
             });
           }}>
           <NavigatorIOS
             style={styles.container}
             tintColor='#FFFFFF'
             barTintColor='#4977f0'
             initialRoute={{
               title: "搜索",
               titleTextColor: 'white',
               component: SearchComponent
             }}/>
         </Icon.TabBarItem>
       </TabBarIOS>
      </View>
    );
  }
}
const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
  },
});
AppRegistry.registerComponent('Demo', () => Demo);
在terminal中的工程文件夹下,输入react-native run-ios(回车)等待程序运行起来就能看到效果啦.
主要代码下载地址: http://download.csdn.net/detail/margaret_mo/9512769
参考网站: https://github.com/oblador/react-native-vector-icons
react-native-vector-icons的简单使用,图片,按钮,标签视图,导航条的更多相关文章
- [RN] React Native 使用开源库 react-native-image-crop-picker 实现图片选择、图片剪裁
		React Native 使用开源库 react-native-image-crop-picker 实现图片选择.图片剪裁 该库可以实现启动本地相册和照相机来采集图片,并且提供多选.图片裁剪等功能,支 ... 
- Expression Blend4经验分享:制作一个简单的图片按钮样式
		这次分享如何做一个简单的图片按钮经验 在我的个人Silverlight网页上,有个Iphone手机的效果,其中用到大量的图片按钮 http://raimon.6.gwidc.com/Iphone/de ... 
- React Native环境配置和简单使用
		# 前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会 ... 
- React Native等比放大不丢失图片
		9月11号 0.33版本,resizeMode中添加了center, 可以实现一样的功能.不过希望这篇文章还能帮助大家. 之前我们学习了从零学React Native之08Image组件 大家可以发现 ... 
- React Native常用组件Image使用
		前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所 ... 
- 【React Native】React Native项目设计与知识点分享
		闲暇之余,写了一个React Native的demo,可以作为大家的入门学习参考. GitHub:https://github.com/xujianfu/ElmApp.git GitHub:https ... 
- 从零学React Native之08Image组件
		开发过程中, 几乎每个项目都会用到图片. RN就是通过Image组件显示图片.既可以加载网络图片,也可以加载本地资源图片. Image组件必须在样式中声明图片的款和高.如果没有声明,则图片将不会被呈现 ... 
- React Native开发入门
		目录: 一.前言 二.什么是React Native 三.开发环境搭建 四.预备知识 五.最简单的React Native小程序 六.总结 七.参考资料 一.前言 虽然只是简单的了解了一下Reac ... 
- react native 之上传文件
		最近遇到react native中需要上传一些图片到后台.期间,找了一些第三方上传插件,感觉不太好用,要么只支持一个平台,要么会对其他第三方造成影响,实在无奈.只能直接使用fetch上传.其中上传文件 ... 
随机推荐
- ASP.NET Aries JSAPI 文档说明:AR.DataGrid、AR.Dictionary
			AR.Global 文档 1:对象或属性: 名称 类型 说明 DG 对象 DataGrid操作对象 //datagrid集合,根据ID取出DataGrid对象,将Json当数组用. Items: ne ... 
- Angular2学习笔记——Observable
			Reactive Extensions for Javascript 诞生于几年前,随着angular2正式版的发布,它将会被更多开发者所认知.RxJs提供的核心是Observable对象,它是一个使 ... 
- 浅谈C#网络编程(一)
			阅读目录: 基础 Socket编程 多线程并发 阻塞式同步IO 基础 在现今软件开发中,网络编程是非常重要的一部分,本文简要介绍下网络编程的概念和实践. Socket是一种网络编程接口,它是对传输层T ... 
- 玩转Windows服务系列——使用Boost.Application快速构建Windows服务
			玩转Windows服务系列——创建Windows服务一文中,介绍了如何快速使用VS构建一个Windows服务.Debug.Release版本的注册和卸载,及其原理和服务运行.停止流程浅析分别介绍了Wi ... 
- Go语言实战 - revel框架教程之CSRF(跨站请求伪造)保护
			CSRF是什么?请看这篇博文“浅谈CSRF攻击方式”,说的非常清楚. 现在做网站敢不防CSRF的我猜只有两种情况,一是没什么人访问,二是局域网应用.山坡网之前属于第一种情况,哈哈,所以至今没什么问题. ... 
- ABP源码分析三十六:ABP.Web.Api
			这里的内容和ABP 动态webapi没有关系.除了动态webapi,ABP必然是支持使用传统的webApi.ABP.Web.Api模块中实现了一些同意的基础功能,以方便我们创建和使用asp.net w ... 
- Entity Framework 6 Recipes 2nd Edition(9-3)译->找出Web API中发生了什么变化
			9-3. 找出Web API中发生了什么变化 问题 想通过基于REST的Web API服务对数据库进行插入,删除和修改对象图,而不必为每个实体类编写单独的更新方法. 此外, 用EF6的Code Fri ... 
- Javascript之匿名函数
			分析: 1.所谓匿名函数,从字面意思理解,就是没有名字的函数,js 用()来代替(注意,是英文状态下的括号) 2.定义形式: function (){ //to add codes that you ... 
- libuv源码分析前言
			Libevent,libev,libuv三者的区别所在? libevent提供了全套解决方案(事件库,非阻塞IO库,http库,DNS客户端),然而libevent使用全局变量,导致非线程安全.它的w ... 
- Win下最爱效率利器:AutoHotKey
			AutoHotkey是一个windows下的开源.免费.自动化软件工具.它由最初旨在提供键盘快捷键的脚本语言驱动(称为:热键),随着时间的推移演变成一个完整的脚本语言.但你不需要把它想得太深,你只需要 ... 
