diff --git a/ImagePickerLib/build.gradle b/ImagePickerLib/build.gradle index 23cab15843ae2c9d6d98c8cc1b3abb2d724391fd..7c1bae4bfe00e9fc03fc5211ef48bd0bb5aa3a9c 100644 --- a/ImagePickerLib/build.gradle +++ b/ImagePickerLib/build.gradle @@ -24,6 +24,7 @@ android { kotlinOptions { jvmTarget = '11' } + namespace 'com.mx.imgpicker' } afterEvaluate { publishing { @@ -33,7 +34,7 @@ afterEvaluate { groupId = 'com.mx.imgpicker' artifactId = 'MXImagePicker' - version = '1.5.5' + version = rootProject.ext.versionName } } } diff --git a/ImagePickerLib/src/main/AndroidManifest.xml b/ImagePickerLib/src/main/AndroidManifest.xml index a9175a124c296f10d1bb5de82c6ebb490cd07d8a..f9c241384d32bba9daa35ab4750583b4ba938c34 100644 --- a/ImagePickerLib/src/main/AndroidManifest.xml +++ b/ImagePickerLib/src/main/AndroidManifest.xml @@ -1,6 +1,5 @@ - + diff --git a/ImagePickerLib/src/main/java/com/mx/imgpicker/app/MXImgShowActivity.kt b/ImagePickerLib/src/main/java/com/mx/imgpicker/app/MXImgShowActivity.kt index e42e64922f1a790c72e6e5a46dbe233ee8367f1c..7c02bd99df8f6bc32e882cdf05b37db310a70f3f 100644 --- a/ImagePickerLib/src/main/java/com/mx/imgpicker/app/MXImgShowActivity.kt +++ b/ImagePickerLib/src/main/java/com/mx/imgpicker/app/MXImgShowActivity.kt @@ -20,13 +20,15 @@ class MXImgShowActivity : AppCompatActivity() { companion object { private const val EXTRAS_LIST = "EXTRAS_LIST" private const val EXTRAS_TITLE = "EXTRAS_TITLE" - fun open(context: Context, list: List, title: String? = null) { + private const val EXTRAS_INDEX = "EXTRAS_INDEX" + fun open(context: Context, list: List, title: String? = null, index: Int = 0) { if (list.isEmpty()) return val list = list.map { MXItem(it, 0L, MXPickerType.Image) } context.startActivity( Intent(context, MXImgShowActivity::class.java) .putExtra(EXTRAS_LIST, ArrayList(list)) .putExtra(EXTRAS_TITLE, title) + .putExtra(EXTRAS_INDEX, index) ) } } @@ -50,7 +52,9 @@ class MXImgShowActivity : AppCompatActivity() { private fun initView() { returnBtn.setOnClickListener { onBackPressed() } - titleTxv.text = intent.getStringExtra(EXTRAS_TITLE) ?: getString(R.string.mx_picker_string_show_list) + titleTxv.text = + intent.getStringExtra(EXTRAS_TITLE) ?: getString(R.string.mx_picker_string_show_list) + val layoutManager = LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false) recycleView.layoutManager = layoutManager @@ -80,5 +84,11 @@ class MXImgShowActivity : AppCompatActivity() { indexTxv.text = "1 / ${imgList.size}" MXUtils.log("显示图片:${imgList.joinToString(",") { it.path }}") adapt.notifyDataSetChanged() + + val index = intent.getIntExtra(EXTRAS_INDEX, 0) + if (index < imgList.size && index >= 0) { + recycleView.scrollToPosition(index) + indexTxv.text = "${index + 1} / ${imgList.size}" + } } } \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index d657b7943cd701fbfe751943c449313298d94ebd..e2856d93729fd3aa0d000f43bb3d46c88606983b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -26,6 +26,7 @@ android { kotlinOptions { jvmTarget = '11' } + namespace 'com.mx.imagepicker_sample' } dependencies { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 79b4ebf56dcd6df117666bc27eaed8a56b1ac853..8bd57c6cba0636064607621f07c9975666cdf22e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,7 +1,6 @@ + xmlns:tools="http://schemas.android.com/tools"> diff --git a/app/src/main/java/com/mx/imagepicker_sample/MainActivity.kt b/app/src/main/java/com/mx/imagepicker_sample/MainActivity.kt index a55d698b24eae3e388d571df6d06cac364d63524..17eb1952164642ff0e92eab2dc3a03daaaf65554 100644 --- a/app/src/main/java/com/mx/imagepicker_sample/MainActivity.kt +++ b/app/src/main/java/com/mx/imagepicker_sample/MainActivity.kt @@ -56,10 +56,11 @@ class MainActivity : AppCompatActivity() { findViewById(R.id.imageBtn).setOnClickListener { MXStarter.start( this, - MXPickerBuilder().setMaxSize(9).setMaxListSize(1000).setCameraEnable(true).createIntent(this) + MXPickerBuilder().setMaxSize(9).setMaxListSize(1000).setCameraEnable(true) + .createIntent(this) ) { resultCode, data -> val list = MXPickerBuilder.getPickerResult(data) - MXImgShowActivity.open(this, list) + MXImgShowActivity.open(this, list, index = list.size - 1) } } findViewById(R.id.imageScaleBtn).setOnClickListener { diff --git a/build.gradle b/build.gradle index 5e4c734654dc0dbdf6d012a10ee200bf6309c055..a4570e2e9f4bab6519425ad52bed0dad61aad5a8 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { - ext.kotlin_version = "1.7.10" + ext.kotlin_version = "1.7.21" repositories { maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/public' } @@ -9,7 +9,7 @@ buildscript { google() } dependencies { - classpath 'com.android.tools.build:gradle:7.2.2' + classpath 'com.android.tools.build:gradle:7.4.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong @@ -37,5 +37,5 @@ ext { minSdkVersion = 19 versionCode = 1 - versionName = "1.5.5" + versionName = "1.5.6" } \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 529e514caed82022f81fc0c0a0c5a9da98ab2b9d..49b90f4c719bddb3c24fdc0368aa67040ef2ba52 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Thu Mar 10 15:22:55 CST 2022 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip distributionPath=wrapper/dists zipStorePath=wrapper/dists zipStoreBase=GRADLE_USER_HOME