I am developing an Android application in Kotlin.
I implemented a RecyclerView based on this library.
Each item contains one of the 3 combinations below :
- a TextView + a TextView
- a TextView + a Button
- a TextView + a Spinner
However, I don't know how to retrieve the spinner item that was selected. Can you help me?
Here is my RecyclerView:
rv_parameters.setup {
withDataSource(parametersList)
withItem<ParameterText, ParameterTextViewHolder>(R.layout.parameter_text) {
onBind(::ParameterTextViewHolder) { _, item ->
parameterName.text = item.parameterName
parameterText.text = item.parameterValue
}
}
withItem<ParameterButton, ParameterButtonViewHolder>(R.layout.parameter_button) {
onBind(::ParameterButtonViewHolder) { _, item ->
parameterName.text = item.parameterName
parameterButton.text = item.parameterButton
}
onClick {
}
}
withItem<ParameterSpinner, ParameterSpinnerViewHolder>(R.layout.parameter_spinner) {
onBind(::ParameterSpinnerViewHolder) { _, item ->
parameterName.text = item.parameterName
parameterSpinner.adapter = item.parameterAdapter
}
onClick {
if(item.parameterName.equals("Led rouge")) {
} else if (item.parameterName.equals("Led jaune")) {
}
}
}
}
Here is my adapter:
private val parametersList = emptyDataSourceTyped<Any>()
Here is how I add an item to my RecyclerView:
parametersList.add(
ParameterSpinner(
"Led rouge", ArrayAdapter(
this,
android.R.layout.simple_spinner_item, resources.getStringArray(R.array.LedState)
)
)
)
And here is my ViewHolder for a Spinner:
data class ParameterSpinner(
var parameterName: String?,
var parameterAdapter: ArrayAdapter<String>
)
question from:
https://stackoverflow.com/questions/65897297/how-to-retrieve-the-selected-item-from-a-spinner-of-a-recyclerview-using-the-re 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…