开发者社区> 桃子红了呐> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

apiCloud上传头像

简介:
+关注继续查看

apiCloud上传头像

1.拍照

2.从相机中选择

aui布局

<li class="aui-list-item">
            <div class="aui-list-item-inner">
                <div class="aui-list-item-label">
                    头像
                </div>
                <div class="aui-list-item-input" style="margin:15px;" onclick="showAction();">
                    <img id="avatar" name="avatar" src="../image/default_headimg.png" width="100px;">
                </div>
            </div>
</li>

2.js事件,弹出选择

function showAction(){
    api.actionSheet({
        title: '上传头像',
        cancelTitle: '取消',
        buttons: ['拍照','从手机相册选择']
    }, function(ret, err) {
        if (ret) {
            getPicture(ret.buttonIndex);
        }
    });
}

422101-20161103151705002-295604291.png

3.处理事件

function getPicture(sourceType) {
    if(sourceType==1){ // 拍照
        //获取一张图片
        api.getPicture({
            sourceType: 'camera',
            encodingType: 'png',
            mediaValue: 'pic',
            allowEdit: false,
            quality: 90,
            saveToPhotoAlbum: true
        }, function(ret, err) {
            // 获取拍照数据并处理
            if (ret) {
                var imgSrc = ret.data;
                if (imgSrc != "") {
                    var ele=$api.dom('#avatar');
                    $api.attr(ele,'src',imgSrc);
                }
            }
        });
    }
    else if(sourceType==2){ // 从相机中选择
        //UIMediaScanner 是一个多媒体扫描器,可扫描系统的图片、视频等多媒体资源
        var obj = api.require('UIMediaScanner');
        obj.open({
            //返回的资源种类,picture(图片),video(视频),all(图片和视频)
            type: 'picture',
            //(可选项)图片显示的列数,须大于1
            column: 4,
            max: 1,
            //(可选项)图片排序方式,asc(旧->新),desc(新->旧)
            sort: {
                key: 'time',
                order: 'desc'
            },
            //(可选项)模块各部分的文字内容
            texts: {
                stateText: '已选择*项',
                cancelText: '取消',
                finishText: '完成'
            },
            styles: {
                bg: '#fff',
                mark: {
                    icon: '',
                    position: 'bottom_right',
                    size: 20
                },
                nav: {
                    bg: '#eee',
                    stateColor: '#000',
                    stateSize: 18,
                    cancleBg: 'rgba(0,0,0,0)',
                    cancelColor: '#000',
                    cancelSize: 18,
                    finishBg: 'rgba(0,0,0,0)',
                    finishColor: '#000',
                    finishSize: 18
                }
            }
        }, function(ret) {
            // 获取图片数据并处理
            if (ret) {
                if (getJsonObjLength(ret.list) != 0) {
                    var ele=$api.dom('#avatar');
                    $api.attr(ele,'src',ret.list[0].path);
                }
            }
        });
    }
}

第一种是apiCloud自带的,获取拍照数据的接口。

第二种需要引入模块,UIMediaScanner。
422101-20161103151718721-1959725349.png

两种方式都能获取图片的app中的地址,把地址通过ajax传递出去到服务器,就可以完成保存头像了。

调试请用手机,不然看不到效果。


本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/6026757.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Spring Cloud Tencent 尝鲜《一》
第一章节我们先说说基本概念,然后说一下配置的使用及服务发现与注册整合过程。
46 0
使用APICloud AVM框架封装通讯录组件
由于很多项目中都会用到通讯录,所有就封装了一个通讯录的组件,实现了可通过字母检索,拨打电话功能。
36 0
SpringCloud学习笔记(一、初识)
SpringCloud学习笔记(一、初识)
53 0
apicloud开发笔记
第一次用apicloud做正式项目 ,下面把做的过程中用到的代码段列出来。。。。都是从文档里复制的代码,只是感觉官网那个文档好难找哦。。。     注:api.????的方法都是在APP中调用才行的,$api.
1144 0
[ActiveMQ]初识ActiveMQ
初识ActiveMQ ActiveMQ介绍 官方网站:http://activemq.apache.org/ 最新版本:ActiveMQ 5.14.1(2016-10-28) 最新版本下载链接:http://activemq.
1694 0
ActiveMQ.Advisory
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/catoop/article/details/52494341 分类 Advisory 说明 DataStruct类型 客户端连接相关 ActiveMQ.
1009 0
ActiveMQ笔记(1):编译、安装、示例代码
一、编译 虽然ActiveMQ提供了发布版本,但是建议同学们自己下载源代码编译,以后万一有坑,还可以尝试自己改改源码。 1.1 https://github.com/apache/activemq/releases 到这里下载最新的release版源码(当前最新版本为5.
923 0
4267
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载