[Android]史上最强的图片选择器-GalleryFinal

news/2024/11/13 23:24:49/

转自:https://segmentfault.com/a/1190000004263541?_ea=549747

首先非常感谢对GalleryFinal提出意见和想法的童鞋们,使得GalleryFinal经过重重迭代变得完善起来。

GitHub地址   Demo APK下载    

简述

GalleryFinal是一个图片选择(单选/多选)、拍照、编辑、裁剪及旋转为一身的图片选择器。使用方便,功能可自己配置,GalleryFinal还可以根据开发者的喜好来选择主题,当然也支持自定义主题。而且GalleryFinal自身并没有强制绑定某个ImageLoader,开发者可以根据自己项目给GalleryFinal配置图片加载器。GalleryFinal还放弃了startActivityForResult+onActivityResult来获取选择结果,而是采用事件回调的机制。(我觉得startActivityForResult+onActivityResult太麻烦了,同意的点个赞吧,呵呵~)。GalleryFinal经过三四个月的版本迭代,修复bug,优化需求,已经处于稳定的状态。

也许有人会问:系统不是有相册选择器吗,为什么还有做一个GalleryFinal呢,有必要吗?我告诉你很有必要。微信,QQ等等app它们都是自己带图片选择器,并没有直接调系统的图片选择器。为什么要这么做呢?我总结出一下几点:

  • 最大的问题就是兼容性了,手机厂商那么多,相册软件那么多从而引起各种奇葩的问题

  • 有些手机拍照图片倒立情况(如三星和魅族)

  • 拿到的bitmap或uri为空

  • 非常频繁出现OOM

  • 不支持多选

  • 拍照/选择图片/裁剪视乎用起来有些麻烦,加上处理一些旋转、裁剪、压缩就更加麻烦了,代码多得不行不行的。

  • 系统的图片选择UI上与自己APP样式不统一

  • 有些不支持图片旋转

  • ....

使用GalleryFinal以上问题你都不用考虑,就是这么的任性。


http://www.ppmy.cn/news/877615.html

相关文章

android背景图线,Android LinearLayout背景图片

有点晚了,但我的问题通过以下代码解决了. 使用ImageView设置我的背景图像,然后在其上显示线性布局. android:layout_width"fill_parent" android:layout_height"fill_parent" android:orientation"vertical" > android:layout_width"wra…

第四关——柯南的小学时光

input()函数 1.input()函数的使用 input()函数是输入函数,当你在函数的括号内写出问题时,input()函数会将此问题原样显示在屏幕上,并在终端区域等待你针对此问题的回答。input()函数输入的值必…

react native(九)修改警告 解决图片加载的坑

图片加载陷入了坑中,不管是本地图片还是网络图片,都没法显示,但是程序并没有一片红,我也十分确定我的图片加载代码正确,以我柯南附体的指挥,我判定与警告有关,哈哈 自从昨天开始就存在两个⚠️…

java 实现图片百分比_[Java教程]图片载入状态判断及实现百分比效果loading

[Java教程]图片载入状态判断及实现百分比效果loading 0 2017-10-14 11:00:11 前言 一些大的外部资源会导致页面加载速度慢,这时候一般会加上loading效果;这里实现的是根据图片加载进度的百分比loading效果 如何判断图片加载的状态 1、onload onerror 推…

java图片上传面试题,面试题:我现在上传图片的时候提前预览到图片怎么办?...

今天我也来标题党一会,用“面试题”蹭一蹭热度,主要还行想深度剖析一下,文件上传,里面的门道。 1、在web上怎么实现文件上传 在我们使用的各种类库,框架中文件上传长相多样,百花齐放,但是归根结…

java压缩图片demo

经试验,原7M的图片可压缩到50K所有 package com.zlxtk.test1;import java.awt.Image;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.util.Date;import javax.imageio.ImageIO;…

轻轻绕过你的防线——霸道的柯南图片管理系统

by lake2 前些天在浏览某个站点的时候,一时手痒,在URL后面加了个“ and 12”意在看看这系统有没有SQL注射漏洞,哪晓得浏览器弹出两个对话框然后无限的弹出窗口。只得赶紧结束掉进程,郁闷,我用的TT浏览器,…

node 图片加水印

1单张图片加水印 使用Node进行图片水印添加,需要借助一个Node中的库: images 1 本地安装images库 npm install images -D 2 创建Img.js var images require(images); var path require(path); var watermarkImg images(water_logo.jpg); var sou…