diff --git a/app/src/main/java/com/casic/qd/smartwell/widgets/EasyAppCompatSpinner.kt b/app/src/main/java/com/casic/qd/smartwell/widgets/EasyAppCompatSpinner.kt new file mode 100644 index 0000000..b28697e --- /dev/null +++ b/app/src/main/java/com/casic/qd/smartwell/widgets/EasyAppCompatSpinner.kt @@ -0,0 +1,31 @@ +package com.casic.qd.smartwell.widgets + +import android.content.Context +import android.util.AttributeSet +import androidx.appcompat.widget.AppCompatSpinner + +/** + * 选同一位置依旧可以触发事件的Spinner + * */ +class EasyAppCompatSpinner : AppCompatSpinner { + + constructor(context: Context?) : super(context!!) + + constructor(context: Context?, attrs: AttributeSet?) : super(context!!, attrs) + + override fun setSelection(position: Int, animate: Boolean) { + val sameSelected = position == selectedItemPosition + super.setSelection(position, animate) + if (sameSelected) { + onItemSelectedListener?.onItemSelected(this, selectedView, position, selectedItemId) + } + } + + override fun setSelection(position: Int) { + val sameSelected = position == selectedItemPosition + super.setSelection(position) + if (sameSelected) { + onItemSelectedListener?.onItemSelected(this, selectedView, position, selectedItemId) + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/qd/smartwell/widgets/EasyAppCompatSpinner.kt b/app/src/main/java/com/casic/qd/smartwell/widgets/EasyAppCompatSpinner.kt new file mode 100644 index 0000000..b28697e --- /dev/null +++ b/app/src/main/java/com/casic/qd/smartwell/widgets/EasyAppCompatSpinner.kt @@ -0,0 +1,31 @@ +package com.casic.qd.smartwell.widgets + +import android.content.Context +import android.util.AttributeSet +import androidx.appcompat.widget.AppCompatSpinner + +/** + * 选同一位置依旧可以触发事件的Spinner + * */ +class EasyAppCompatSpinner : AppCompatSpinner { + + constructor(context: Context?) : super(context!!) + + constructor(context: Context?, attrs: AttributeSet?) : super(context!!, attrs) + + override fun setSelection(position: Int, animate: Boolean) { + val sameSelected = position == selectedItemPosition + super.setSelection(position, animate) + if (sameSelected) { + onItemSelectedListener?.onItemSelected(this, selectedView, position, selectedItemId) + } + } + + override fun setSelection(position: Int) { + val sameSelected = position == selectedItemPosition + super.setSelection(position) + if (sameSelected) { + onItemSelectedListener?.onItemSelected(this, selectedView, position, selectedItemId) + } + } +} \ No newline at end of file diff --git a/app/src/main/res/layout/activity_statistics.xml b/app/src/main/res/layout/activity_statistics.xml index 2c9196a..57a3b97 100644 --- a/app/src/main/res/layout/activity_statistics.xml +++ b/app/src/main/res/layout/activity_statistics.xml @@ -30,7 +30,7 @@ android:textColor="@color/mainTextColor" android:textSize="@dimen/textFontSize" /> - - - - - - - - -