Configuración de la selección del girador por valor, no por posición
Al actualizar una vista y la selección del girador debe coincidir con un valor almacenado en la base de datos, el El enfoque convencional es localizar la posición correspondiente utilizando un método indexOf en el Adaptador. Sin embargo, este enfoque encuentra un obstáculo ya que el Adaptador no proporciona dicho método.
Para superar este desafío, un enfoque más adecuado es utilizar el método getPosition de ArrayAdapter. Este método, cuando se combina con un ArrayAdapter adecuado, permite la identificación de la posición asociada con un valor específico.
Considere un escenario donde el Spinner llamado mSpinner contiene un valor de "algún valor". Para localizar y comparar su posición, siga estos pasos:
Cree un ArrayAdapter a partir del archivo de recursos R.array.select_state:
ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.select_state, android.R.layout.simple_spinner_item);
Configurar el adaptador del Spinner y DropDownViewResource:
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mSpinner.setAdapter(adapter);
A continuación, si el valor a comparar (compareValue) no es nulo:
if (compareValue != null) {
int spinnerPosition = adapter.getPosition(compareValue);
mSpinner.setSelection(spinnerPosition);
}
Al emplear este enfoque, la selección del Spinner se puede establecer con precisión en función del valor almacenado en la base de datos, lo que brinda una experiencia de usuario perfecta durante las actualizaciones de la vista.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3