Hbuilder开发app实战-识岁02-照相和选取照片
Hbuilder开发app实战-识岁02-拍照和选取照片
前言
拍照和选取照片是app中比较常用的功能了,本节讲解一下
代码
// choice img function choiceImg(){ qiao.h.sheet('选择照片', ['拍照','相册'], function(e){ var index = e.index; if(index == 1) choiceCamera(); if(index == 2) choicePic(); }); } function choiceCamera(){ var cmr = plus.camera.getCamera(); cmr.captureImage(function (p){ plus.io.resolveLocalFileSystemURL(p, function(entry){ setImg(entry.toLocalURL()); }, function(e){}); }, function(e){},{index:1,filename:"_doc/camera/"}); } function choicePic(){ plus.gallery.pick(function(path){setImg(path);},function(e){},{filter:'image'}); } function setImg(src){ $('#faceImg').attr('src', src); }
接上节的内容,调用actionsheet之后,让用户选择是拍照还是选取照片,
通过e.index来判断,用户的选择。
拍照
拍照使用到了nativejs封装好的Camera对象,详见:这里,
首先通过var cmr = plus.camera.getCamera();获取Camera对象,
然后调用captureImage进行拍照,这个方法有三个参数,
cmr.captureImage( successCB, errorCB, option );
第一个是拍照成功的回调,第二个是拍照失败的回调,第三个是拍照的设置,其中一三是必选的。
拍照成功后会返回文件的url地址,
然后通过IO组件,获取文件对象,IO组件详见:这里,
通过这个方法来获取文件,
void plus.io.resolveLocalFileSystemURL( url, succesCB, errorCB );
参数分别是,url,成功回调,失败回调。
至此通过拍照获取了文件地址。
选取相片
选取相片用到的是gallery组件,详见,这里,
从系统相册获取相片使用了以下方法:
void plus.gallery.pick( successCB, errorCB, option );
参数和上面的类似,
至此,选取相片也获取了文件地址。
下一步
下一步会通过文件地址和uploader组件,将文件上传到七牛云。
更多教程:
Hbuilder开发App实战1-识岁:http://uikoo9.com/book/detail/5
更多学习笔记:http://uikoo9.com/book
版权声明:本文为博主原创文章,未经博主允许不得转载。