Louvre

介绍:

非常不错的图片选择器,功能完善,动画超赞

运行效果:

使用说明:

在root build.gradle 文件中添加以下代码:

allprojects {
    repositories {
        ...
        maven { url "https://jitpack.io" }
    }
}

然后,在app的build.gradle中添加库:

dependencies{
    compile 'com.github.andremion:louvre:1.2.0'
}

为GalleryActivity选择一个Louvre 主题

<style name="AppTheme.Louvre.Light.DarkActionBar" parent="Louvre.Theme.Light.DarkActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>
<style name="AppTheme.Louvre.Dark" parent="Louvre.Theme.Dark">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>
<style name="AppTheme.Louvre.Light" parent="Louvre.Theme.Light">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

对于PreviewActivity你只需定义 accent color。

<style name="AppTheme.Louvre.Preview" parent="Louvre.Theme.Preview">
    <item name="colorAccent">@color/colorAccent</item>
</style>

在AndroidManifest.xml中使用新主题定义Louvre Activity

<activity
    android:name="com.andremion.louvre.home.GalleryActivity"
    android:theme="@style/AppTheme.Louvre.Light.DarkActionBar" />
<activity
    android:name="com.andremion.louvre.preview.PreviewActivity"
    android:theme="@style/AppTheme.Louvre.Preview" />

在AndroidManifest.xml中添加READ_EXTERNAL_STORAGE 权限

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

在你的Activity中,用下面的代码打开Louvre

Louvre.init(myActivity)
        .setRequestCode(LOUVRE_REQUEST_CODE)
        .open();

你也可以用Fragment打开Louvre,这种情况下,Fragment将得到onActivityResult callback。

Louvre.init(myFragment)
        .setRequestCode(LOUVRE_REQUEST_CODE)
        .open();

自定义picker:

设置允许选择的最大图片个数:

louvre.setMaxSelection(10)

设置当前选中的item

List<Uri> selection;
...
louvre.setSelection(selection)

设置媒体类型,可以是这三个的任意组合:Louvre.IMAGE_TYPE_BMP, Louvre.IMAGE_TYPE_JPEG, Louvre.IMAGE_TYPE_PNG

louvre.setMediaTypeFilter(Louvre.IMAGE_TYPE_JPEG, Louvre.IMAGE_TYPE_PNG)

See more at the sample

已下载
0