android Matisse图片选择器的引入
来源:互联网 发布:淘宝个人信誉度怎么看 编辑:程序博客网 时间:2024/06/07 16:09
hi,由于最近琐事太多,很久没有更新博客了,今天抽空给大家分享一个图片下载器Matisse,出自知乎,绝对的精品;
之前也使用过三方的图片选择器,但是Matisse的图片界面效果简直是美翻天,并且Matisse中引入了Glide和Picasso,这两个库可以自行选择;
具体好不好用还是自己去体会吧,反正我是推荐使用的,下面就直接上代码了
首先引入依赖库文件,Matisse显示图片我使用的是Glide
compile 'com.zhihu.android:matisse:0.4.3'
compile 'com.github.bumptech.glide:glide:3.5.2'
当你需要调用图片选择器就用这段代码
Matisse.from(activity)
.choose(MimeType.allOf())//照片视频全部显示
.countable(true)//显示选择的数量
.maxSelectable(1) // 图片选择的最多数量
.gridExpectedSize(MyApplication.getApp().getWidth() / 3 - 5)//图片显示在列表中的大小
.restrictOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED)
.thumbnailScale(0.85f) // 缩略图的比例
.imageEngine(new GlideEngine()) // 使用的图片加载引擎
.theme(R.style.Matisse_Zhihu)//主题
.capture(false) //是否提供拍照功能
.forResult(23); // 设置作为标记的请求码
你选择的图片会以一个List返回给你
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 23&& resultCode == RESULT_OK) {
List<Uri> mSelected = Matisse.obtainResult(data);
}
}
拿到图片后你想干嘛,就是你的事了,嘿嘿
如果你想使用相机,就没有这么简单了, 用相机!相机!相机!
如果你只看官方文档,你是无法完成相机的使用
会多几步操作,首先在res下的xml文件夹下新建 filepaths.xml文件
<?xml version="1.0" encoding="utf-8"?>
<paths>
<external-path
name="my_images"
path="Pictures"/>
</paths>
然后在AndroidManifest文件的application节点下放入
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="包名.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/filepaths" />
</provider>
这样配置就完成了,那么在你使用相机和选择图片的时候直接调用
Matisse.from(activity)
.choose(MimeType.allOf())//照片视频全部显示
.countable(true)//显示选择的数量
.maxSelectable(1) // 图片选择的最多数量
.gridExpectedSize(MyApplication.getApp().getWidth() / 3 - 5)//图片显示在列表中的大小
.restrictOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED)
.thumbnailScale(0.85f) // 缩略图的比例
.imageEngine(new GlideEngine()) // 使用的图片加载引擎
.theme(R.style.Matisse_Zhihu)//主题
.capture(true) //是否提供拍照功能
.captureStrategy(
new CaptureStrategy(true, "包名.fileprovider"))
.forResult(23); // 设置作为标记的请求码
返回的照片和上面不使用相机返回的是一样的
- android Matisse图片选择器的引入
- Matisse Android 图片选择器
- Matisse——Android 图片/视频选择器
- Matisse Android图片选择器详细使用
- 知乎开源的图片选择器 Matisse 在 6.0 以上手机使用相机功能
- <Android 开源库> Matisse,来自知乎的PhotoPicker
- css 引入方式,选择器,选择器的优先级
- Android selector 图片选择器 背景选择器的简单用法
- Android 实现一个仿微信的图片选择器
- android图片滚动选择器的实现
- Android 图片选择器的3中方式
- android的图片选择器selecotr注意事项
- 高效简洁的android 图片视频选择器
- Android图片选择器
- Android 图片选择器
- android图片选择器
- Android图片选择器
- Android 图片选择器
- mysql 操作
- 权限
- 面试题随手练(二):打印实心菱形(对角线基数)
- xml配置文件引入properties文件
- Serializable和Parcelable总结
- android Matisse图片选择器的引入
- 十分钟带你理解Kubernetes核心概念
- Java数学表达式计算(Expression Evaluator)
- web.xml配置详解
- Elasticsearch学习笔记
- 高数 01.03函数的极限
- 第一章 Extjs开发环境(入门教程)
- 使用jdk开发webservice接口以及调用
- 【转】jquery.cookie() 方法的使用(读取、写入、删除)