編輯:關於Android編程
最近也是剛好項目用到,於是就動手寫了一個Android 圖片選擇器的庫。支持圖庫多選/單選/圖片裁剪/拍照/自定義圖片加載庫,極大程度的簡化使用。
截圖

優點
1、通過實現ImageLoader接口,可以實現自定義圖片加載器的功能。例如可以用Glide、Picasso、ImageLoader,暫不支持Fresco,因為SimpleDraweeView本身並不屬於ImageView。當然,也可用相同的思路來實現。
2、可配置的ImgSelConfig。方便進行擴展。
3、簡化使用
項目地址:https://github.com/smuyyh/ImageSelector
依賴
dependencies {
compile 'com.yuyh.imgsel:library:1.0.1'
}
使用
配置權限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
使用
// 自定義圖片加載器
private ImageLoader loader = new ImageLoader() {
@Override
public void displayImage(Context context, String path, ImageView imageView) {
// TODO 在這邊可以自定義圖片加載庫來加載ImageView,例如Glide、Picasso、ImageLoader等
Glide.with(context).load(path).into(imageView);
}
};
// 配置選項
ImgSelConfig config = new ImgSelConfig.Builder(loader)
// 是否多選
.multiSelect(false)
// “確定”按鈕背景色
.btnBgColor(Color.GRAY)
// “確定”按鈕文字顏色
.btnTextColor(Color.BLUE)
// 標題
.title("圖片")
// 標題文字顏色
.titleColor(Color.WHITE)
// TitleBar背景色
.titleBgColor(Color.parseColor("#3F51B5"))
// 裁剪大小。needCrop為true的時候配置
.cropSize(1, 1, 200, 200)
.needCrop(true)
// 第一個是否顯示相機
.needCamera(false)
// 最大選擇圖片數量
.maxNum(9)
.build();
// 跳轉到圖片選擇器
ImgSelActivity.startActivity(this, config, REQUEST_CODE);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// 圖片選擇結果回調
if (requestCode == REQUEST_CODE && resultCode == RESULT_OK && data != null) {
List<String> pathList = data.getStringArrayListExtra(ImgSelActivity.INTENT_RESULT);
for (String path : pathList) {
tvResult.append(path + "\n");
}
}
}
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持本站。
Android反編譯和二次打包實戰
作為Android開發者,工作中少不了要反編譯別人的apk,當然主要目的還是為了學習到更多,取彼之長,補己之短。今天就來總結一下Android反編譯和二次打包的一些知識。
Android組件:Fragment切換後保存狀態
之前寫的第一篇Fragment實例,和大多數人一開始學的一樣,都是通過FragmentTransaction的replace方法來實現,replace方法相
微信運動 微信運動怎麼用
微信運動是微信開發的基於第三方個人運動數據實現微信好友運動數據記錄和PK的一項服務,微信運動通過讀取第三方運動數據實現與微信好友運動數據PK,目前微信運動支
AndroidStudio 如何使用JNI
一這是本人第一次寫博客 請多多關照第一次接觸到Android NDK 真是蒙圈 因為需要和Bluetooth下位機接觸 所以要在項目中鑲嵌Cpp 算法 然後總結了andr