Android 图片选择、预览、九宫格图片控件、拖拽排序九宫格图片控件

7d54831e-5d92-11e6-83d0-4049039e0899.gif

将 MeiqiaSDK-Android[https://github.com/Meiqia/MeiqiaSDK-Android] 里的图库单独抽出来开源,将其中的 GridView、ListView 和 RelativeLayout 换成 RecyclerView 和 Toolbar,方便在以后的项目中直接依赖使用。Demo 中模仿了微信朋友圈的部分功能,详细用法请查看 Demo。希望能该库帮正在做这几个功能的猿友节省开发时间。
单图选择
多图选择
拍照选择
图片选择预览(支持微博长图)、缩放查看
图片预览(支持微博长图)、缩放查看
支持 glide、picasso、universal-image-loader、xutils 图片加载库
支持配置列表滚动时是否暂停加载图片,列表停止滚动时恢复加载图片(用 xutils 作为图片加载库时该配置无效)
正方形、圆形头像、带边框的圆形头像控件
朋友圈列表界面的九宫格图片控件
发布朋友圈界面的可拖拽排序的九宫格图片控件
覆盖相应的资源文件来定制界面

1.添加 Gradle 依赖
「latestVersion」指的是左边这个 maven-central 徽章后面的「数字」,请自行替换。请不要再来问我「latestVersion」是什么了
由于需要支持微博长图预览,该库中已经引入了 PhotoView 的源码并进行了修改,所以你的项目中就不要再重复引入 PhotoView 了

dependencies {
    compile 'com.android.support:appcompat-v7:25.1.0'
    compile 'com.android.support:recyclerview-v7:25.1.0'
    compile 'cn.bingoogolapple:bga-adapter:1.1.5@aar'

    compile 'cn.bingoogolapple:bga-photopicker:latestVersion@aar'

    // 必须依赖下面四个图片加载库中的某一个
    compile 'com.github.bumptech.glide:glide:3.7.0'
//    compile 'com.squareup.picasso:picasso:2.5.2'
//    compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
//    compile 'org.xutils:xutils:3.3.36'
}

2.接口说明

/**
 * @param context        应用程序上下文
 * @param imageDir       拍照后图片保存的目录。如果传null表示没有拍照功能,如果不为null则具有拍照功能,
 * @param maxChooseCount 图片选择张数的最大值
 * @param selectedImages 当前已选中的图片路径集合,可以传null
 * @param pauseOnScroll  滚动列表时是否暂停加载图片
 * @return
 */
public static Intent newIntent(Context context, File imageDir, int maxChooseCount, ArrayList selectedImages, boolean pauseOnScroll)

/**
 * 获取已选择的图片集合
 *
 * @param intent
 * @return
 */
public static ArrayList getSelectedImages(Intent intent)
/**
 * 获取查看多张图片的intent
 *
 * @param context
 * @param saveImgDir      保存图片的目录,如果传null,则没有保存图片功能
 * @param previewImages   当前预览的图片目录里的图片路径集合
 * @param currentPosition 当前预览图片的位置
 * @return
 */
public static Intent newIntent(Context context, File saveImgDir, ArrayList previewImages, int currentPosition)

/**
 * 获取查看单张图片的intent
 *
 * @param context
 * @param saveImgDir 保存图片的目录,如果传null,则没有保存图片功能
 * @param photoPath  图片路径
 * @return
 */
public static Intent newIntent(Context context, File saveImgDir, String photoPath)

自定义属性说明


    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    



    
    
    
    
    
    
    
    
    
    
    
    
    
    



    
    
    
    
    
    
    
    
    
    
    
    

你可能感兴趣的:(Android 图片选择、预览、九宫格图片控件、拖拽排序九宫格图片控件)