---------------------------------------------------------------------------------------------------
React.native是facebook开源的一套基于JavaScript的开源框架,
非常方便用来开发移动设备的app。
并且,方便及时更新app的UI与数据。也非常方便部署。
goodmao希望帮助大家迅速上手掌握!
----------------------------------------------------------------------------------------------------

參考:
源代码參考:Layout.h/.c文件
----------------------------------------------------------------------------------------------------

我们这一节,简介关于图像Image的使用。
目的是让大家在分分钟内理解并学会使用方法。


一、Image简单介绍:
React能够载入并显示多种来源的图片,包含:
1.本地静态资源图,本地暂时图;
2.网络图。
3.本地磁盘图(比如相冊或相机)。


二、用法

(1)本地静态图使用
    1.加入图片到项目中
       加入图片到项目中后。生成的app中直接包括了静态图片资源,能够直接使用。

       
       有两种方式加入图片到项目中,如图:
       a.直接在xcode中加入目录和图片
       b.在Images.xcassets中加入图片



    2.载入并显示
      a.定义样式
var styles = StyleSheet.create({
container: {
//flex: 1, flexDirection: 'row', position: 'absolute',
top: 100,
left: 10, justifyContent: 'center',
alignItems: 'center',
backgroundColor: '#F5FCFF',
}, size: {
width: 100,
height: 150,
},
});

注意:须要设置flex属性为0或者使用默认值。否则flex:1,则图片会被拉伸。





      b.创建类载入并显示图片
      说明:导入本地静态资源图的方法为 require('image!1'),
                当中,參数'image' 表示载入图片文件,參数'1' 是图片文件名称,
                两者中间用感叹号'!'分隔。
      注意:我尝试了用这两种方式载入jpg图片,竟然没显示,还没查明原因。

                 假设哪位搞定,麻烦告知和给各位朋友分享。
var HelloReact = React.createClass({

  //设置视图Image
render: function() {
return (
<View style = {styles.container}>
<Image
style = {styles.size}
source = {require('image!1')} //1.Images.xcassets图片
/> <Image
style = {styles.size}
source = {require('image!2')} //2.Xcode中直接加入Images路径和图片
/>
</View>
);
}
});



(2)载入并显示server的图片
    1.加入图片到server
      在我们測试项目 HelloReact的目录中。与index.ios.js同一级目录,
      创建目录存:server-image。存放以下js中须要载入的图片文件。



    2.载入并显示图片
       a.样式定义同上

       b.创建类并载入和显示网络图
       说明:直接用属性uri: 就可以载入网络图片,且支持常见图片格式(png,jpg等)。
var HelloReact = React.createClass({ //创建组件类

  //组件的渲染方法
//设置视图Image
render: function() {
return (
<View style = {styles.container}>
<Image
source = {{uri: 'http://172.16.105.149:8081/server-image/goodmao.jpg'}} //3.网络图
style = {styles.size}
/>
</View>
);
}
});

三、执行效果图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWFveWluZ3lvbmc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">



说明:图片来自“小偶App”,好玩吧?!
           喜欢自拍的朋友。不要错过,哈哈!


【Facebook的UI开发框架React入门之八】Image的使用简单介绍(iOS平台)-goodmao的更多相关文章

  1. 【Facebook的UI开发框架React入门之九】button简单介绍(iOS平台)-goodmao

    --------------------------------------------------------------------------------------------------- ...

  2. 文顶顶 iOS开发UI篇—UITabBarController简单介绍 iOS开发UI篇—UITabBarController简单介绍

    一.简单介绍 UITabBarController和UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型的例 ...

  3. 《R语言入门》语言及环境简单介绍

    简单介绍 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/diss ...

  4. apicloud入门学习笔记1:简单介绍

    官网地址:https://www.apicloud.com/ 新手开发指南:https://docs.apicloud.com/APICloud/junior-develop-guide 开发语言:H ...

  5. 基于React 的前端UI开发框架 及与Electron 的结合 https://cxjs.io/

    1.cxjs  基于React 的前端UI开发框架    https://cxjs.io/ coreu   http://coreui.io/ 2.antd-admin                ...

  6. React 入门实例教程

    现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑. React 起源于 Face ...

  7. React入门 (1)—使用指南(包括ES5和ES6对比)

    前言 本篇会简明扼要的介绍一下React的使用方法.代码会用JSX+ES5和JSX+ES6两种方式实现. React简介 React来自Facebook,于2013年开源.至今不断修改完善,现在已经到 ...

  8. 2015年最热门前端框架React 入门实例教程

    现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Native 发布,结果一天之内,就获得了 5000 颗星,受瞩目程度可见一斑. React 起源于 Face ...

  9. react 入门教程 阮一峰老师真的是榜样

    -  转自阮一峰老师博客 React 入门实例教程   作者: 阮一峰 日期: 2015年3月31日 现在最热门的前端框架,毫无疑问是 React . 上周,基于 React 的 React Nati ...

随机推荐

  1. C-基础:C语言为什么不做数组下标越界检查

    //这段代码运行有可能不报错.]; ;i<;i++) { a[i]=i; } 1.为了提高运行效率,不检查数组下表越界,程序就可以跑得快.因为C语言并不是一个快速开发语言,它要求开发人员保证所有 ...

  2. Hibernate中tx.commit()

    hibernate.cfg,xml文件中的自动提交事务是false.主键生成策略是native. 在表的映射继承是手动提交事务(即:tx.commit())无法发出sql语句,把数据插入到数据库的表中 ...

  3. postman使用--批量执行测试用例和数据驱动

    批量执行 在我们测试接口的时候,有时候希望执行所有的测试用例,前面讲的都是测试单个的接口,postman提供了我们批量执行接口的功能 点击Runner 然后我们点击run 执行完会统计出我们的结果,失 ...

  4. SQL比较两表字段和字段类型

    一.问题 业务需要把TB_Delete_KYSubProject表数据恢复到TB_KYSubProject,但提示错误,错误原因是两表字段类型存在不一致 insert into [TB_KYSubPr ...

  5. 【MyBatis】MyBatis Tomcat JNDI原理及源码分析

    一. Tomcat JNDI JNDI(java nameing and drectory interface),是一组在Java应用中访问命名和服务的API,所谓命名服务,即将对象和名称联系起来,使 ...

  6. 记录xerces使用(VS2017 C++)

    1.编译xerces,获得dll文件和lib文件 2.将dll文件和lib文件拷贝到使用xerces的工程目录里面去 3.配置VS2017 C/C++  ->  All Options --&g ...

  7. bash实现自动补全

    yum install -y bash-completion source /usr/share/bash-completion/bash_completion 执行后yum拥有选项自动补全功能 对于 ...

  8. hibernate中时间比较的小笔记

    // 开单时间 if (!"".equals(startDate) && startDate != null) { queryCondition = queryCo ...

  9. 如何将表的行数赋值给变量(MySQL)

    delimiter $$ drop procedure if exists test_at $$ create definer=root@localhost procedure test_at() b ...

  10. CI 安装时目录的安全处理

    如果你想通过隐藏 CodeIgniter 的文件位置来增加安全性,你可以将 system 和 application 目录修改为其他的名字,然后打开主目录下的 index.php 文件将 $syste ...