Android微调器:当我在代码中设置ArrayAdapter时,Android调用onItemSelected.只有当用户点击微调按钮项目时才能调用?

听者

binding.spinner.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
        override fun onItemSelected(adapterView: AdapterView<*>?, view: View, i: Int, l: Long) {
            value = binding.spinner.selectedItem.toString()

            when (value) {
                'a' -> {
                    valueId = 1
                    Log.d("onItemSelected", "valueId = 1")
                }
                'b' -> {
                    valueId = 2
                    Log.d("onItemSelected", "valueId = 2")
                    
                }
                else -> {
                    valueId = 0
                    Log.d("onItemSelected", "valueId = 0")
                }
            }
        }

        override fun onNothingSelected(adapterView: AdapterView<*>?) { return }
    }

微调按钮设置自适应

val values = arrayOf('Choice : ', 'a', 'b', 'c')  
val adapterSpinner = ArrayAdapter(mContext, android.R.layout.simple_spinner_dropdown_item, values)
            binding.spinner.adapter = adapterSpinner

S有没有可能用其他解决方案改变旋转器上的值?

推荐答案

我找到了解决办法.它S可能与安卓微调与ListPopupWindow的替代.我可以在没有调用事件的情况下更改适配器onItemSelected

Android相关问答推荐

KMM项目生成错误-';在项目';中找不到测试类:共享';

如何将结果从viewModelScope传递到活动

Android意图过滤器不限制应用程序仅处理YouTube链接

房间DB:UPSERT返回什么?

每次重启Android时预填入Room数据库

从未设置实时数据值

Jetpack Compose-如何在进入新产品线之前删除单词?

Play store 的 Play 完整性与 Firebase 应用判断 Play 完整性

activity在 Runnable 中如何工作?我的 Android 表格未显示

如何迭代 SqlDelight Select 结果而不将所有内容加载到内存中?

当父布局的背景为浅色时,Android ProgressBar 背景 colored颜色 变为灰色

Jetpack Compose:在屏幕外制作长水平图像的动画

只能从同一个库组内调用成功(引用groupId=androidx.work from groupId=My Composable)

Jetpack Compose 中带有权重的行和 AnimatedVisibility 会 destruct UI

设置背景图片组成Column

在 Jetpack Compose 的无状态 Compose 中管理条件逻辑

自定义 Compose Arrangement 以在 LazyRow/LazyColumn 的开头和结尾添加额外的间距

Int 传递给 Intent 但Android工作室说我传递了一个字符串

删除一对多关系室 Kotlin 中的所有值

Android Studio 的项目 gradle 文件改变了?