Cómo establecer el elemento de vista de cuadrícula según lo seleccionado

Tengo un GridView que utiliza el adaptador del arsenal para poblar los datos.

De forma predeterminada, cuando se muestra GridView , tengo que mostrar uno de los elementos seleccionados. He utilizado gridview.setselected() , pero no mostró el elemento GridView como seleccionado (quiero decir, el fondo del elemento no se cambia). Hay alguna manera de mostrar un elemento específico como seleccionado cuando se carga la vista de cuadrícula. Por favor recomiende

Luché con esto un poco ayer antes de darse cuenta de que lo que realmente quería era que el elemento fuera revisado. es decir

 gridview.setItemChecked(position, true); 

GridView.setSelected() es en realidad heredado de View y sólo establece el GridView completo en su diseño según lo seleccionado.

Lo que está buscando es GridView.setSelection(int position) para seleccionar el elemento actual en el GridView desde la posición cero.

Otra función útil es GridView.getFirstVisblePostion() que puede usarse para almacenar la ubicación actual en GridView (si es grande y desplazable) para que pueda restaurarse cuando se restaura el estado de la instancia (digamos en una rotación) o de otra manera.

Al trabajar en estas cosas, siempre es útil buscar en la documentación de Android Developer para tu widget / objeto.

Espero que esto ayude

  gridView.requestFocusFromTouch(); gridView.setSelection(1); 

En el método getView() del adaptador, haga lo siguiente

 if(row != null) { if(position == selectedPosition){ set required background color } else { set background color to Color.TRANSPARENT } } 

En el método onItemClick, establezca el valor Adapter.selectedPosition y llame a notifydatasetchanged() y luego proceda con la lógica requerida.

En <GridView> elemento de xml set listSelector to android:color/transparent

Compruebe con el siguiente método

 GridView.setBackgroundResource(R.drawable.new_image_to_be_shown); 

Esto le permitirá cambiar el fondo de su elemento seleccionado como la nueva imagen.

Y si desea cambiar el color del elemento seleccionado,

 GridView.setBackgroundColor(int color); 

Esto resolverá su problema.

  • Cambiar la visibilidad del elemento Gridview
  • Alinear la casilla de verificación dentro de un diseño relativo
  • GridView y el desorden del icono mientras que usa "si (convertView == null)"
  • Cómo poner GridView en ScrollView
  • Lazy descargar imágenes en gridView
  • OnClickListener del primer elemento de GridView no funciona
  • Actualización de la vista de cuadrícula dinámicamente cuando se elimina un elemento (archivo)
  • GridView con zoom
  • ImageView ScaleType ignora el relleno
  • Android gridview se estrella en Galaxy 3
  • Gridview altura se corta
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.