Android Spinner 跳转到之前选择的位置

标签 android kotlin android-spinner android-xml

我正在使用 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/

相关文章:

android - 具有相同 ID 的微调器/如何以编程方式添加行

Android geocoding api 无法返回地址

android - 无法让 SipDemo 注册 sip 语音通话

Kotlin:如何从范围返回一些值?

android - 组件导航,带参数从后台弹出

android - 自定义 View 上的 findViewById 抛出 null

安卓 Espresso : How to match text on custom spinner selected item layout?

android - 点击 Spinner 时如何不丢失文本选择?

android - 从工具栏中的 fragment 访问 Imageview

android - 如何从assets文件夹中解析xml