更改材料下拉菜单上的选定项目

时间:2021-04-23 10:40:39

标签: android kotlin material-components-android

我使用了两个 material drop down menu,列出了不同的价格,一个用于最低价格,另一个用于最高价格。我正在使用此侦听器获取所选项目:(minPrice 和 maxPrice 是 TextInputLayout)

(minPrice.editText as AutoCompleteTextView).onItemClickListener =
    OnItemClickListener { adapterView, view, position, id ->
        val selectedValue: String? = adapter.getItem(position)
    }

(maxPrice.editText as AutoCompleteTextView).onItemClickListener =
    OnItemClickListener { adapterView, view, position, id ->
        val selectedValue: String? = adapter2.getItem(position)
    }

但我也想,比如,如果用户选择10k$作为最小值,那么如果用户选择小于10k$作为最大值,则将其更改为最小值。像这样: if(maximum < minimum) maximum = minimum

问题是我不知道如何更改选定的值。我试过这样做:(priceMaxItems 是项目列表)

if(priceMaxItems[maxPrice.editText?.text.toString()]!! priceMinItems[minPrice.editText?.text.toString()]!!) {
    maxPrice.editText?.text  = minPrice.editText?.text
}

但是如果我这样做,下拉菜单将只显示匹配项之外的唯一项目,就像有人输入了数字而不是如果有人选择了该项目。

1 个答案:

答案 0 :(得分:0)

我不确定您的问题,但我的目标是将 maxPrice editText 值设置为 minPrice。

这段代码会让人困惑。

maxPrice.editText?.text  = minPrice.editText?.text

尝试获取 minPrice 并将其设置为 maxPrice 喜欢:

val minP = minPrice.editText?.text
maxPrice.editText?.text = minP
相关问题