·在活动或片段中使用它。
· 选择包括图像、视频、音频和文档在内的多媒体文件。
· 应用不同的主题,包括两个内置主题和自定义主题。
· 限制不同的屏幕方向。
· 通过您自己去发现更多功能。
· 将JitPack存储库添加到根build.gradle文件:
repositories {
maven { url "https://jitpack.io" }
}
· 将代码添加到模块的build.gradle文件中:
dependencies {
implementation 'io.github.tonnyl:charles:x.y.z'
}
Maven
<dependency>
<groupId>io.github.tonnyl</groupId>
<artifactId>charles</artifactId>
<version>x.y.z</version>
<type>pom</type>
</dependency>
ProGuard
如果您使用Glide作为图像引擎,请按照Glide的自述添加规则。并添加额外规则:
-dontwarn com.squareup.picasso.**
如果您使用Picasso作为图像引擎,请按照Picasso的自述添加规则。并添加额外规则:
-dontwarn com.bumptech.glide.**
注意:以上程序规则是正确的。
Usage
Permission
库需要两个权限:
·android.permission.READ_EXTERNAL_STORAGE
· android.permission.WRITE_EXTERNAL_STORAGE
所以,如果您的目标是Android 6.0+,您需要在下一步之前处理运行时权限请求。
Simple Usage Snippet
Start CharlesActivity from current Activity or Fragment:
Charles.from(this@MainActivity)
.choose()
.maxSelectable(9)
.progressRate(true)
.theme(R.style.Charles)
.imageEngine(GlideEngine())
.restrictOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED)
.forResult(REQUEST_CODE_CHOOSE)
Themes
有两个内置主题可用于启动CharlesActivity:
· R.style.Charles (light mode)
· R.style.CharlesDark (dark mode)
你也可以随心所欲地定义自己的主题。
Receive Result
In onActivityResult() callback of the starting Activity or Fragment:
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == REQUEST_CODE_CHOOSE && resultCode == Activity.RESULT_OK) {
val uris = Charles.obtainResult(data)
val paths = Charles.obtainPathResult(data)
Log.d("charles", "uris: $uris")
Log.d("charles", "paths: $paths")
}
}
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理