方法简介:

takeSnapshot方法是react-native自带的生成图片的属性,可以将”screen”, “window” 或者 “view”生成对应的图片。

兼容:
takeSnapshot之前的写法是在UIManager中,新版本后放到了ReactNative模块中。

使用:
直接使用以下方法即可调用生成对应视图的图片

注意:需要引用ReactNative模块
var ReactNative = require('react-native');

ReactNative.takeSnapshot('screen', {format: 'png', quality: 1}).then((uri) => this.setState({uri:uri})
).catch((error) => alert(error)
);
  • takeSnapshot第一个参数:需要生成图片的视图类型,比如:’screen’,’window’,’this.refs.view’
  • takeSnapshot第二个参数:生成图片的格式

完整代码:

import React, { Component } from 'react';
var ReactNative = require('react-native');
import { AppRegistry, Text, View, Dimensions, Image } from 'react-native';
var {height, width} = Dimensions.get('window');
export default class pictureDemo extends Component {constructor(props){super(props);this.state = {uri: 'null'}}takeToImage() {ReactNative.takeSnapshot(this.refs.location, {format: 'png', quality: 1}).then((uri) => this.setState({uri:uri})).catch((error) => alert(error));}render(){console.log(this.state.uri);return (<View><View ref='location' style={{backgroundColor: 'green', padding: 12, margin: 20}}><Text>this is a girl</Text><Text>this is a friend</Text><Text>o</Text><Text>this is a girl friend</Text></View><Text onPress={()=>this.takeToImage()}>生成图片</Text><Image style={{borderWidth: 1, height: 100, width: width, marginTop: 10}} source={{uri: this.state.uri}} /></View>);}
}

效果图:

React Native 生成图片相关推荐

  1. fragment中文网_更新 · React Native 中文网

    时刻将 React Native 更新到最新的版本,可以获得更多 API.视图.开发者工具以及其他一些好东西(译注:官方开发任务繁重,人手紧缺,几乎不会对旧版本提供维护支持,所以即便更新可能带来一些兼 ...

  2. React Native —— App

    使用 React Native 作为 app 框架,Redux 作为数据层,因此我们需要选用一些支持性的技术和工具: 开源的 Parse Server 做数据存储 - 运行在 Node.js 上. F ...

  3. 【React Native】iOS原生导航跳转RN页面

    上一篇介绍了React Native使用react-navigation进行导航跳转页面,现在我们介绍下原生iOS中怎么导航进一个新的React Native页面. 一.原生跳转React Nativ ...

  4. 【React Native】react-navigation导航使用方法

    目录 集成react-navigation 使用react-navigation 上一篇介绍了如何在已有iOS项目中集成React Native.这一篇我们把上一篇的demo做下拓展,添加点击电影跳转 ...

  5. 给iOS开发者的React Native入门使用教程

    目录 一. 原生iOS项目集成React Native 二. 原生跳转RN页面 三. 显示豆瓣热门电影列表 四. 改为导航 五.完整源代码 一. 原生iOS项目集成React Native 创建一个新 ...

  6. 对比React Native、dcloud、LuaView三个框架技术(内部)

    转载自:http://www.jianshu.com/p/ee1cdb33db8d 主要对比React Native和5+SDK(就是dcloud的SDK)两个: 开发语言:三个都是用其他语言来统一开 ...

  7. 初步了解React Native的新组件库firstBorn

    first-born is a React Native UI Component Framework, which follows the design methodology Atomic Des ...

  8. 我在React Native中构建时获得的经验教训

    by Amanda Bullington 通过阿曼达·布林顿(Amanda Bullington) 我在React Native中构建时获得的经验教训 (Lessons I learned while ...

  9. React Native开源项目如何运行(附一波开源项目)

    学习任何技术,最快捷的方法就是学习完基础语法,然后模仿开源项目进行学习,React Native也不例外.React Native推出了1年多了, 开源项目太多了,我们以其中一个举例子.给大家演示下如 ...

最新文章

  1. 【直播】林锦弘:CV赛事高分经验分享
  2. setcookie第三个值为什么写0
  3. 朋友,别在降低别人底线或被别人降低底线了!
  4. iOS开发UI篇—实现UITableview控件数据刷新
  5. android游戏开发者大会,第二届中国Android应用开发大会将开
  6. java messagebox 关闭_wince/WinForm下实现一个自动关闭的MessageBox
  7. 【caffe解读】 caffe从数学公式到代码实现4-认识caffe自带的7大loss
  8. golang 位操作
  9. opencv阈值化(五)
  10. for惠普2013实习生
  11. 项目复审——Beta阶段
  12. php文件显示不完整,github文件显示不全
  13. 这个太有意思了,程序员可以消遣娱乐
  14. Ubuntu网络配置相关相关
  15. html漂亮的表格模板+背景_咨询amp;金融主题响应式网站着陆页模板
  16. 最小公倍数最大公约数
  17. SpringBoot之Hypermedia-Driven RESTful Web Service
  18. 携程的旅游知识图谱构建和应用
  19. html5如何修改登录页面的背景,HTML5 月夜背景的用户登录界面
  20. CIO40:企业信息化为什么要进行顶层设计?

热门文章

  1. 微信小程序开发——五星好评
  2. c#取小数点后三位_VB.NetC#-取小数点后几位但不四舍五入的方法
  3. cocoscreator实现spine用外部图片进行换皮
  4. 野生程序员的成长之路(下)--管理者的忧郁
  5. 我骑方轮车笑对坑洼人生
  6. 12周年・校庆牛礼,有你一份!
  7. 解决Canceled future for execute_request message before replies were done
  8. 动态规划——多段图问题
  9. 另外一种方式:用USB摄像头实现网络监控
  10. 结合计算机专业职业修养的重要性,浅谈职业教育中的计算机教育