diff --git a/MXAdapt/src/main/java/com/mx/adapt/scroller/MXScrollPickerView.kt b/MXAdapt/src/main/java/com/mx/adapt/scroller/MXScrollPickerView.kt index 97949bd60136e9abee2ec10f07a81aead4a75bae..5012b6da64d9b382d4ca5523ffe8afaa798c2788 100644 --- a/MXAdapt/src/main/java/com/mx/adapt/scroller/MXScrollPickerView.kt +++ b/MXAdapt/src/main/java/com/mx/adapt/scroller/MXScrollPickerView.kt @@ -24,7 +24,6 @@ class MXScrollPickerView @JvmOverloads constructor( get() = (itemSize - 1) / 2 internal val itemHeight get() = getAllHeight() / itemSize - private var itemSelect: IMXSelect? = null private val pickerAdapt = MXScrollPickerAdapt(this) @@ -98,6 +97,7 @@ class MXScrollPickerView @JvmOverloads constructor( fun setSelectIndex(index: Int, animation: Boolean = false) { val position = max(0, index) smoothScrollTo(position, animation) + post { smoothScrollTo(position, animation) } } fun setOnSelectListener(listener: IMXSelect?) { @@ -131,12 +131,18 @@ class MXScrollPickerView @JvmOverloads constructor( } } + override fun onAttachedToWindow() { + super.onAttachedToWindow() + + } + private var currentSelectIndex = -1 private fun notifySelectChange(index: Int) { + val itemSelect = itemSelect ?: return val targetIndex = if (index < 0) 0 else index if (targetIndex == currentSelectIndex) return currentSelectIndex = targetIndex - itemSelect?.onSelect(targetIndex) + itemSelect.onSelect(targetIndex) } private fun smoothScrollTo(position: Int, animation: Boolean) { diff --git a/README.md b/README.md index c063ef09bdb711700e314045a604c19170368be3..05dec2fb70625f590370c8359c4d2eedfb850ae8 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ [![](https://jitpack.io/v/com.gitee.zhangmengxiong/MXRecycleAdapt.svg)](https://jitpack.io/#com.gitee.zhangmengxiong/MXRecycleAdapt) ```gradle - implementation 'com.gitee.zhangmengxiong:MXRecycleAdapt:1.2.4' + implementation 'com.gitee.zhangmengxiong:MXRecycleAdapt:1.2.5' ``` #### 介绍 adapt快速开发基类 diff --git a/build.gradle b/build.gradle index 598a6f2ade504d52bfa102786a71055492f79bf4..6ba2131d74e877810a7ffbddbbe728df98813588 100644 --- a/build.gradle +++ b/build.gradle @@ -35,5 +35,5 @@ ext { minSdkVersion = 19 versionCode = 1 - versionName = "1.2.4" + versionName = "1.2.5" } \ No newline at end of file