当前位置:   article > 正文

Hbuilder开发app实战-识岁01-actionsheet实例_plus.nativeui.actionsheet

plus.nativeui.actionsheet

 

 

前言

​​​​​​​

 

之前写了HBuilder开发App入门-滴石,相信大家看完后应该可以入门了,

之后会做一些简单的app,把nativejs一些常用的功能都过一遍,这样以后做app就没什么难的了。

识岁

借助与face++的接口,做了一个人脸识别app,准确性和微软比确实差点,

主要用到了:

1.actionsheet的原生实现

2.选择本地照片

3.使用摄像头拍照

4.使用uploader上传文件

5.调用face++接口进行人脸识别

6.七牛云上传的实现

actionsheet

实现

actionsheet是iphone上很常见的,效果见文章顶部图片,

mui的actionsheet有两种实现方式,一种还是html5进行模仿,一种是调用封装好的nativeui进行实现,

和以前一样,还是比较推荐原生的实现,一是效果逼真,二是缺点比较少。

代码:

  1. plus.nativeUI.actionSheet({
  2. title : title,
  3. cancel : '取消',
  4. buttons : btnArray
  5. }, function(e){
  6. if(func) func(e);
  7. });

可以看到,其实是调用nativeui组件的actionsheet方法,详见:这里

如上,其实只需要传入一个标题,和固定的取消按钮,还有你需要传入的按钮数组即可,

有一个回调函数,通过判断e.index来确定点击了哪个按钮,

稍作封装:

  1. // actionsheet
  2. qiao.h.sheet = function(title, btns,func){
  3. if(title && btns && btns.length > 0){
  4. var btnArray = [];
  5. for(var i=0; i<btns.length; i++){
  6. btnArray.push({title:btns[i]});
  7. }
  8. plus.nativeUI.actionSheet({
  9. title : title,
  10. cancel : '取消',
  11. buttons : btnArray
  12. }, function(e){
  13. if(func) func(e);
  14. });
  15. }
  16. };

本例中,

标题设置为“选择照片”,需要两个按钮,一个是“拍照”,一个是“相册”,

代码:

  1. qiao.h.sheet('选择照片', ['拍照','相册'], function(e){
  2. var index = e.index;
  3. if(index == 1) choiceCamera();
  4. if(index == 2) choicePic();
  5. });

当e.index=1的时候,是点击了第一个按钮“拍照”,

当e.index=2的时候,点击了第二个按钮“相册”,

当e.index=0的时候,点击了取消,不做处理,

当点击其他地方的时候,e.index=-1,同样不做处理。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/294354
推荐阅读
相关标签
  

闽ICP备14008679号