diff --git a/app/build.gradle b/app/build.gradle index 0e87b4f..3725dcb 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,13 +1,13 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 25 - buildToolsVersion "25.0.3" + compileSdkVersion 27 + buildToolsVersion '27.0.3' defaultConfig { applicationId "com.lzy.imagepickerdemo" minSdkVersion 14 - targetSdkVersion 25 + targetSdkVersion 27 versionCode 1 versionName "1.0" } @@ -20,17 +20,17 @@ android { } dependencies { - compile fileTree(include: ['*.jar'], dir: 'libs') - compile 'com.android.support:appcompat-v7:25.3.1' - compile 'com.android.support:recyclerview-v7:25.3.1' + implementation fileTree(include: ['*.jar'], dir: 'libs') + implementation 'com.android.support:appcompat-v7:26.0.1' + implementation 'com.android.support:recyclerview-v7:26.0.1' - compile 'com.github.bumptech.glide:glide:3.7.0' - compile 'com.squareup.picasso:picasso:2.5.2' - compile 'org.xutils:xutils:3.3.36' - compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5' + implementation 'com.github.bumptech.glide:glide:3.7.0' + implementation 'com.squareup.picasso:picasso:2.5.2' + implementation 'org.xutils:xutils:3.3.36' + implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5' - compile 'com.lzy.widget:view-core:0.2.1' + implementation 'com.lzy.widget:view-core:0.2.1' //compile 'com.lzy.widget:imagepicker:0.6.0' - compile project(':imagepicker') + implementation project(':imagepicker') } diff --git a/build.gradle b/build.gradle index b0700d2..2984839 100644 --- a/build.gradle +++ b/build.gradle @@ -3,9 +3,10 @@ buildscript { repositories { jcenter() + google() } dependencies { - classpath 'com.android.tools.build:gradle:2.3.3' + classpath 'com.android.tools.build:gradle:3.1.0-beta1' classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7' classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5' @@ -17,6 +18,7 @@ buildscript { allprojects { repositories { jcenter() + google() } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4671f10..1048506 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Wed Apr 19 17:17:17 CST 2017 +#Wed Jan 31 14:59:22 CST 2018 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip diff --git a/imagepicker/build.gradle b/imagepicker/build.gradle index eab8365..d68c277 100644 --- a/imagepicker/build.gradle +++ b/imagepicker/build.gradle @@ -1,12 +1,12 @@ apply plugin: 'com.android.library' android { - compileSdkVersion 25 - buildToolsVersion "25.0.3" + compileSdkVersion 27 + buildToolsVersion '27.0.3' defaultConfig { - minSdkVersion 11 - targetSdkVersion 25 + minSdkVersion 14 + targetSdkVersion 27 versionCode 1 versionName "1.0" vectorDrawables.useSupportLibrary = true @@ -20,10 +20,10 @@ android { } dependencies { - compile fileTree(include: ['*.jar'], dir: 'libs') - compile 'com.android.support:appcompat-v7:25.3.1' - compile 'com.android.support:recyclerview-v7:25.3.1' - compile 'com.github.chrisbanes.photoview:library:1.2.4' + implementation fileTree(include: ['*.jar'], dir: 'libs') + implementation 'com.android.support:appcompat-v7:26.0.1' + implementation 'com.android.support:recyclerview-v7:26.0.1' + implementation 'com.github.chrisbanes.photoview:library:1.2.4' } //apply from: '../bintray.gradle' \ No newline at end of file diff --git a/imagepicker/src/main/java/com/lzy/imagepicker/bean/ImageItem.java b/imagepicker/src/main/java/com/lzy/imagepicker/bean/ImageItem.java index 7a8112d..d6c01ba 100644 --- a/imagepicker/src/main/java/com/lzy/imagepicker/bean/ImageItem.java +++ b/imagepicker/src/main/java/com/lzy/imagepicker/bean/ImageItem.java @@ -29,7 +29,7 @@ public class ImageItem implements Serializable, Parcelable { public boolean equals(Object o) { if (o instanceof ImageItem) { ImageItem item = (ImageItem) o; - return this.path.equalsIgnoreCase(item.path) && this.addTime == item.addTime; + return this.path.equalsIgnoreCase(item.path) ; } return super.equals(o); diff --git a/imagepicker/src/main/java/com/lzy/imagepicker/ui/ImageGridActivity.java b/imagepicker/src/main/java/com/lzy/imagepicker/ui/ImageGridActivity.java index e2c4dcf..47f29cb 100644 --- a/imagepicker/src/main/java/com/lzy/imagepicker/ui/ImageGridActivity.java +++ b/imagepicker/src/main/java/com/lzy/imagepicker/ui/ImageGridActivity.java @@ -11,6 +11,7 @@ import android.support.v4.content.ContextCompat; import android.support.v7.widget.GridLayoutManager; import android.support.v7.widget.RecyclerView; +import android.support.v7.widget.SimpleItemAnimator; import android.util.Log; import android.view.Gravity; import android.view.View; @@ -240,6 +241,7 @@ public void onImagesLoaded(List imageFolders) { // mImageGridAdapter.setOnImageItemClickListener(this); mRecyclerAdapter.setOnImageItemClickListener(this); mRecyclerView.setLayoutManager(new GridLayoutManager(this, 3)); + ((SimpleItemAnimator)mRecyclerView.getItemAnimator()).setSupportsChangeAnimations(false); mRecyclerView.addItemDecoration(new GridSpacingItemDecoration(3, Utils.dp2px(this, 2), false)); mRecyclerView.setAdapter(mRecyclerAdapter); mImageFolderAdapter.refreshData(imageFolders); @@ -333,39 +335,20 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) { //发送广播通知图片增加了 ImagePicker.galleryAddPic(this, imagePicker.getTakeImageFile()); - /** - * 2017-03-21 对机型做旋转处理 - */ String path = imagePicker.getTakeImageFile().getAbsolutePath(); -// int degree = BitmapUtil.getBitmapDegree(path); -// if (degree != 0){ -// Bitmap bitmap = BitmapUtil.rotateBitmapByDegree(path,degree); -// if (bitmap != null){ -// File file = new File(path); -// try { -// FileOutputStream bos = new FileOutputStream(file); -// bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bos); -// bos.flush(); -// bos.close(); -// } catch (IOException e) { -// e.printStackTrace(); -// } -// } -// } - ImageItem imageItem = new ImageItem(); imageItem.path = path; - imagePicker.clearSelectedImages(); + //imagePicker.clearSelectedImages(); imagePicker.addSelectedImageItem(0, imageItem, true); if (imagePicker.isCrop()) { Intent intent = new Intent(ImageGridActivity.this, ImageCropActivity.class); startActivityForResult(intent, ImagePicker.REQUEST_CODE_CROP); //单选需要裁剪,进入裁剪界面 - } else { + } /*else { Intent intent = new Intent(); intent.putExtra(ImagePicker.EXTRA_RESULT_ITEMS, imagePicker.getSelectedImages()); setResult(ImagePicker.RESULT_CODE_ITEMS, intent); //单选不需要裁剪,返回数据 - finish(); - } + //finish(); + }*/ } else if (directPhoto) { finish(); } diff --git a/imagepicker/src/main/res/layout/activity_image_grid.xml b/imagepicker/src/main/res/layout/activity_image_grid.xml index 7fb4185..da9add4 100644 --- a/imagepicker/src/main/res/layout/activity_image_grid.xml +++ b/imagepicker/src/main/res/layout/activity_image_grid.xml @@ -1,13 +1,13 @@ - + + layout="@layout/include_top_bar" /> + android:paddingBottom="49dp" + android:paddingTop="1dp" + android:scrollbars="vertical" /> + android:textSize="16sp" /> + android:src="@mipmap/text_indicator" /> @@ -75,7 +73,7 @@ android:text="预览(3)" android:textAllCaps="false" android:textColor="#FFFFFF" - android:textSize="16sp"/> + android:textSize="16sp" /> diff --git a/imagepicker/src/main/res/layout/pop_folder.xml b/imagepicker/src/main/res/layout/pop_folder.xml index 1f51737..33cda89 100644 --- a/imagepicker/src/main/res/layout/pop_folder.xml +++ b/imagepicker/src/main/res/layout/pop_folder.xml @@ -7,18 +7,16 @@ android:orientation="vertical"> - +