-
Notifications
You must be signed in to change notification settings - Fork 155
常见问题
如果有特殊问题,请提issue,更建议加QQ群391638630,不仅有很多同样使用RxImagePicker的小伙伴,同时我更容易第一时间看到,并进行交流反馈。
图片的编辑、剪裁、涂鸦 (后统称为图片编辑)是一个我可能会加入的功能,但至少不是现在。
图像处理 是一个很庞大的系统,并非所有的需求都需要它,即使有,也可能只是其中的一小部分。
RxImagePicker的定义很纯粹,我不希望它负载其他的责任。如果有机会,我会考虑再实现一个 RxImageEditor 诸如此类的 图片编辑库,并且提供和RxImagePicker对接的接口,但是这太遥远了。
同时, 图片的调整(除了裁剪之外,还有图片压缩,涂鸦,注释,模糊处理等) 是一个大的功能,我认为它也应该有一个复杂的设计来实现 ——单纯的写一个固定的界面实现图片的裁剪或者压缩并不是很困难,但是这会带来耦合,这不是我希望看到的。
RxImagePicker的设计之初目的就是 支持RxJava2,采用Dagger也是方便管理依赖,这是架构设计时的思路。
之前借鉴郭神的平台发表自己的文章,在末尾的评论中,我看到了不少朋友类似的意见,库本身添加额外的依赖本身就是不合理的设计。我最近在思考这个问题,减少库的依赖是有意义的,但是这可能需要很多时间去调整底部的架构,在不久之后的 某个大版本,我会将Dagger的依赖从库中移除,但对于移除 RxJava 来说,所需要的成本可能会很高,我可能暂时不会去修改底层关于 RxJava 的架构及依赖配置:pray:。
当然,如果您有兴趣,也可以fork源码并进行个性化的修改:smile:。
在最新的2.x版本中,Dagger的依赖已经被移除。
请首先检查自己项目中是否出现依赖冲突,不同的依赖库,内部的依赖可能版本不一样,这样就可能会导致编译期间依赖冲突。
最简单的,比如v7包,如果有冲突,应该做出如下配置:
// 如果是RxImagePicker的扩展依赖,也应该这样配置
implementation 'com.github.qingmei2:rximagepicker:2.1.2',{
exclude group: 'com.android.support', module: 'appcompat-v7'
}
请首先检查自己的Activity中,是否重写了onActivityResult()
方法!
以系统相机拍照为例,基本原理是在当前Activity创建了一个不可见的Fragment,然后通过Intent打开系统相机,当用户拍照后,data会通过Activity分发给Fragment处理,因此,如果重写了Activity的onActivityResult()
方法,一定不要手误删除这行代码:
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
// 不要删除这行代码!
super.onActivityResult(requestCode, resultCode, data)
//...do other thing
}
如果是kotlin,千万不要弄错平台类型,即参数中Intent应该是可空的Intent?
而不是Intent
(虽然这是Kotlin基础,但是不熟悉的同学可能会误操作)。
导致该情况可能是项目的com.android.support
包版本较低的原因导致的,建议开发者将项目中的依赖版本更新到最新版本。
详情请参考 #32
- 主页
- 2.x更新日志(RxJava2)
- 3.x更新日志(RxJava3 + AndroidX)
- 常见问题
- 开发准备
-
开始使用
- 1 快速实现
- 2 进阶使用
- 设计思想
- 2.1 行为注解
- 2.2 ICustomPickerView接口
- 2.3 【必要参数】Context
- 2.4 【可选参数】ICustomPickerConfiguration
- 2.5 实现完全自定义UI
- 2.6 选择结果Result和扩展数据
- 3 已废弃API