Android之高仿微信朋友圈图片上传

碰到过很多上传图片的功能,大多都是要求是仿微信,不论是单图还是多图,更不知道是出于什么原因要去仿微信,总之,作为开发人员,很无奈,今天就把这种需求总结出来了,方便以后使用,下面就开始撸......

一、效果图

由于gif格式太大了,这里只能将就看看截图了,想看真机效果的就要查看demo了。

说明:初始界面,只显示了一张“+”号图片,此图片是自己随便找的,不要在意这种细节。


说明:点击“+”号打开的界面,默认显示图片最多的一个文件夹;底部可切换图片文件夹。这里可以设置单选模式一级是否有相机功能。


说明:切换图片文件夹截图。


说明:选中效果,右上角有当前选中的张数展示,每次最多支持选9张。


说明:上一界面确定后,可见由于张数没有够9张,所以“+”号还是显示的,可继续点击添加。


说明:添加9张时的截图,此时不显示“+”号。


说明:图片浏览界面,提供删除功能。左上角显示当前总共张数和删除数量变化。可以左右滑动预览。此处对大图进行了压缩处理。

二、思路

首页负责显示每次选择的图片,在相册列表拿到的图片集(List<String>),包含的是图片的地址,在首页的onActivityResult()方法中接收,并将其转换成图片添加到我们的首页负责显示的GridView数据集中,并做了以下两个工作,①压缩处理;②判断显示最后一个“+”号图片(具体逻辑看代码)。预览时,对于删除操作,将每次预览的图片集存为一个临时集合,删除后返回首界面刷新我们的GridView数据集。

三、代码

1,异步获取本地图片核心代码

说明:选择图片时,本地图片数量可能会很多,所以需要异步处理。

2,预览删除功能核心代码

说明:当完全删除时自动回到首页界面,如果没有完全删除,可点击完成再回到首页,其实是一样的,可根须需求修改。预览界面左上角显示当前总张数和总共可选择的数量。

3,自定义ViewPager

说明:处理触摸事件。因为图片支持双击放大和缩小功能(在图片的ScaleType属性设置为矩阵时有效)。

4,要看完整代码就在公众号里找链接,这里不贴出来了。


code小生:

完整代码已上传至github,欢迎stars,链接在公众号里。有问题可留言,或者加公众号里给出的群联系。


(0)

相关推荐

  • Android 仿微信朋友圈,缩放归位功能详细解析

    效果 老规矩,先上图,这个效果大家应该都很熟悉 分析 想要实现这样的效果,在自定义控件的的时候,要首先分析一下功能要点有下面几个: 获取点击图片所在位置 获取相应bitmap 在对应位置绘制bitma ...

  • Android 仿微信朋友圈全文、收起功能

    前言 一般在社交APP中都有类似朋友圈的功能,其中发表的动态内容很长的时候不可能让它全部显示.这里就需要做一个仿微信朋友圈全文.收起功能来解决该问题.在网上看到一个例子--> http://bl ...

  • 推荐一个高仿微信的项目 有点屌!!

    程序员涨点薪吧 今天 1 前言 该项目是一款高仿微信的开源项目,iOSAppTemplate代码重构,基于TLKit. ZZFLEX实现. 2 已实现的功能 1. 消息界面 消息列表(新会话加入,DB ...

  • 高逼格微信朋友圈是这样发出来的,原来这么简单

    点  击  上  面  蓝  字  关  注  我  们 第045期 ▼ Hi,大家好,我是[电脑手机那些事儿]的工程师小雨.大家发朋友圈是千篇一律,基本都是一段文字配一张图.今天小雨教大家怎样发个性 ...

  • 松下造了一个“高仿天窗”,家里装上它逼格拉满!下水道男孩馋哭了~

    如果有人跟你说他每天早上睁开眼就能看见蓝天,那一般有两种情况-- 一种是这个人无家可归,只能在外面席地而躺- 一种是这个人壕气冲天,有钱在天花板上开天窗- 由此可见,天窗对一个家的逼格提升不是一点两点 ...

  • 微信朋友圈怎么上转mp3歌曲?_360问答

    微信朋友圈怎么上转mp3歌曲? 生708877488浏览1338次其他分享举报 1个回答 满意答案 oivyy 推荐于 2017.10.10 有两种方法: 一种是微信自带插件,还有一种是播放器的自带插 ...

  • 这事解决了|微信朋友圈独生子女所传是否真实

    这事由市卫计委解决了 有拍友反映: 亲友们注意了:如果你身边有男60岁以上,女50岁以上的退休人员,属于一个孩子的计划生育家庭,从7月1日开始可以在居住地居委会报名,申请享受城镇计划生育奖励扶助资金, ...

  • 微信视频号电脑可以操作吗?微信视频号电脑上传内容方法

    微信视频号电脑怎么登陆?微信视频号电脑可以看吗?微信视频号电脑怎么上传视频?微信视频号电脑可以直播吗?其实微信视频号在很早的时候,就可以在电脑后台上传高清视频了,微信视频号电脑版的后台应用就是[视频号 ...

  • 为什么微信会要求用户上传身份证照片?

    使用微信钱包涉及网上银行支付安全,必须依法管控.完成微信实名认证的用户才可以正常使用微信钱包进行转账.发红包.存款理财.微信支付等操作,而未经过身份证实名认证的用户只能使用微信聊天等不涉及钱款支付存取 ...