我正在使用 AppCompatSpinner 来显示状态列表。最初,我保存了第一个位置项目。然后,如果我单击微调器并尝试慢慢滚动到之前的位置。如果我快速滚动它就可以了。在缓慢滚动和长按微调器的过程中,列表项会产生问题。有人知道如何解决这个问题吗?这是我的微调器。
<androidx.appcompat.widget.AppCompatSpinner
android:id="@+id/stateSpinner"
style="@style/Widget.AppCompat.Spinner.Underlined"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/SpinnerStyle"/>
val adapter = ArrayAdapter(
context,
R.layout.spinner_item, stateList
)
adapter.setDropDownViewResource(R.layout.spinner_dropdown_item)
stateSpinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
override fun onItemSelected(adapterView: AdapterView<*>, view: View, i: Int, l: Long) {
viewModelOffice.officeSelectedState.set(stateList.get(i))
}
override fun onNothingSelected(adapterView: AdapterView<*>) {
}
}
stateSpinner.adapter = adapter
stateSpinner.setSelection(selectedPosition)
}
在主题中,我只是设置颜色。应用程序的最低版本是 21。任何帮助将不胜感激。
最佳答案
终于对我有用了
问题是 anroidx 更新库
通过将版本 appcompat 从“alpha02/alpha03”还原为“alpha01”来解决
实现'androidx.appcompat:appcompat:1.1.0-alpha01'
或更好
实现 'androidx.appcompat:appcompat:1.0.2' -> 更稳定
关于Android Spinner 跳转到之前选择的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54995769/