React Native 使用开源库 react-native-image-crop-picker 实现图片选择、图片剪裁

该库可以实现启动本地相册和照相机来采集图片,并且提供多选、图片裁剪等功能,支持iOS和Android两个平台,不同平台需要分别配置,详细的文字说明见github

一、安装

npm install react-native-image-crop-picker -S

react-native link react-native-image-crop-picker 

二、配置

1)Android

a、Gradle版本必须大于2.2

b、

打开android下的build.gradle ,加入 maven { url "https://jitpack.io" }

allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
}

同时 打开android/app下的build.gradle,在android / defaultConfig / 节点下添加useSupportLibrary

android {
...
defaultConfig {
...
vectorDrawables.useSupportLibrary = true
...
}
...
}

c、打开android/app/src/main/AndroidManifest.xml配置文件,添加权限:

<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

d、settings.gradle 添加  (如已被 link 添加,则可跳过)

include ':react-native-image-crop-picker'
project(':react-native-image-crop-picker').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-image-crop-picker/android')

e、MainApplication  中添加   (如已被 link 添加,则可跳过)

import com.reactnative.ivpusic.imagepicker.PickerPackage;

******

@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new ReactVideoPackage(),
new OrientationPackage(),
new VectorIconsPackage(),
new PickerPackage()
);
} ******

2)IOS

由于 笔者 暂时是在Android下开发,后续在IOS中 实践通过,再补充!

三、使用

1)引用

import ImagePicker from 'react-native-image-crop-picker'; 

2)调用

    // 从本地相册选择单幅图像
ImagePicker.openPicker({
width: ,
height: ,
cropping: true
}).then(image => {
console.log(' 图片路径:'+ image);
}); // 调用多个图像
ImagePicker.openPicker({
multiple: true
}).then(images => {
console.log(images);
}); // 启动相机拍照
ImagePicker.openCamera({
width: ,
height: ,
cropping: true
}).then(image => {
console.log(image);
}); // 裁剪已有的图片
ImagePicker.openCropper({
path: 'image-file-path.jpg',
width: ,
height:
}).then(image => {
console.log(image);
});

本博客地址: wukong1688

本文原文地址:https://www.cnblogs.com/wukong1688/p/10960484.html

转载请著名出处!谢谢~~

[RN] React Native 使用开源库 react-native-image-crop-picker 实现图片选择、图片剪裁的更多相关文章

  1. beeshell —— 开源的 React Native 组件库

    介绍 beeshell 是一个 React Native 应用的基础组件库,基于 0.53.3 版本,提供一整套开箱即用的高质量组件,包含 JavaScript(以下简称 JS)组件和复合组件(包含 ...

  2. React Native常用的第三方开源库

    记录一下自己暂目前了解和使用的一些开源库和官方文档和优秀博客介绍,希望对你有帮助☺️: 1.Toast: https://github.com/magicismight/react-native-ro ...

  3. 2、手把手教React Native实战之从React到RN

    ###React简介 RN是基于React设计,了解React有助于我们开发RN应用: React希望将功能分解化,让开发变得像搭积木一样,快速而且可维护 React主要有如下3个特点: *作为UI( ...

  4. 如何运行开源的React Native项目?

    如何运行开源的RN项目? 1.下载 2.解压 3.配置本地sdk位置 sdk.dir = D\:\\Android\\SDK 4.调整gradle版本 apply plugin: "com. ...

  5. (转)React Native 使用react-native-image-picker库实现图片上传功能

    react-native-image-picker作为一个集成相机和相册的功能的第三方库,因为其使用相对简单受到前端开发人员的喜爱. react-native-image-picker使用 首先,安装 ...

  6. React 与 React Native 底层共识:React 是什么

    此系列文章将整合我的 React 视频教程与 React Native 书籍中的精华部分,给大家介绍 React 与 React Native 结合学习的方法,此小节主要介绍 React 的底层原理与 ...

  7. Hybrid APP基础篇(二)->Native、Hybrid、React Native、Web App方案的分析比较

    说明 Native.Hybrid.React.Web App方案的分析比较 目录 前言 参考来源 前置技术要求 楔子 几种APP开发模式 概述 Native App Web App Hybrid Ap ...

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

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

  9. Native VS H5 VS React Native

    现在软件行业已经跨入大前端时代,所以势必学一点前端的知识.本来移动端开发都是使用各自平台的语言,如iOS端使用OC,swift:Android使用java,但是随着H5的出现,导致移动端Native出 ...

随机推荐

  1. Java学习:Set接口与HashSet集合存储数据的结构(哈希表)

    Set接口 java.util.Set接口 extends Collection接口 Set接口的特点: 不允许存储重复的元素 没有索引,没有带索引的方法,也不能使用普通的for循环遍历 java.u ...

  2. TestNG系列(五)TestNG测试报告

    以TestNG执行测试方法后会生成test-output测试结果集,其中index.html是测试结果的展示.TestNG的测试报告可以通过IReporter监听自定义,也可以通过第三方工具(Repo ...

  3. SQL Server中临时表是在什么schema下的(转载)

    Specifying schema for temporary tables 问: I'm used to seeing temporary tables created with just the ...

  4. Visual Studio 技巧

    Visual Studio 技巧 1 常用设置 2 常用快捷键 2.1 系统默认快捷键 2.2 自定义快捷键 3 修复系统错误 1 常用设置 Text Editor -> All Languag ...

  5. 2d图片依次排列在屏幕中间(SpriteRenderer)

    如图所示: C#代码: using System.Collections; using System.Collections.Generic; using UnityEngine; public cl ...

  6. vs2017js 方法注释

    vs2017给js方法加注释,就像给C#类似 例如 function test1(a,b,c){ .... } 在function的上一行,打一个 " / " 再连续按两下 &qu ...

  7. docker run VS docker exec 的区别

    “docker run”和“docker exec”都是 Docker 容器中用于执行的命令.然而,在不同的情况下,它们的使用有着本质上的区别. “docker run”命令 “docker run” ...

  8. Java自学-类和对象 单例模式

    Java的饿汉式与懒汉式单例模式 LOL里有一个怪叫大龙GiantDragon,只有一只,所以该类,只能被实例化一次 步骤 1 : 单例模式 单例模式又叫做 Singleton模式,指的是一个类,在一 ...

  9. Nginx深入详解之upstream分配方式

    一.分配方式 Nginx的upstream支持5种分配方式,下面将会详细介绍,其中,前三种为Nginx原生支持的分配方式,后两种为第三方支持的分配方式: 1.轮询 轮询是upstream的默认分配方式 ...

  10. vue跳转链接(新页签)

    const {href} = this.$router.resolve({path:"/hosScreen"}); window.open(href, '_blank');