Gridview con diseño (imageview + imagebutton) para cada valor
¿Es posible hacer una gridview que tiene en lugar de una cuadrícula de imágenes, una cuadrícula de imágenes con una pequeña imagen debajo de cada una de ellas?
- View obtiene su estado dibujable (presionado, etc ...) de su padre
- ClassNotFoundException para android.view.Space al ejecutar la aplicación
- ¿Cómo puedo utilizar FragmentManager para mostrar Fragmento A, B, C, ... en un FrameLayout?
- Barras del sistema translúcido y margen de contenido en KitKat
- GridView pointToPosition con espaciado
- Android: muestra un cuadro de diálogo emergente cuando se hace clic en una palabra concreta de TextView
- Flotar vistas para que no ocupen espacio en el diseño
- Separador de relleno, ignorándolo
- Agregar más de una cadena a un TextView
- ¿Cómo se centra un texto en el diseño?
- ¿Cómo superar este elemento de relleno en el cajón de navegación?
- Alinear los controles uno junto al otro en un diseño relativo
- Aplicación basada en mosaico de Android para la aplicación
Respuesta corta: Sí. Puede tener un ImageView
y un ImageButton
en un GridView
.
Respuesta larga:
Naturalmente, tendrá que crear un GridView
personalizado para ese propósito.
Por ejemplo:
Cree un XML que contenga el contenedor GridView
, por ejemplo, grid.xml
:
<GridView android:id="@+id/gridFriends" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clipChildren="true" android:columnWidth="100dp" android:fastScrollEnabled="true" android:gravity="center" android:numColumns="auto_fit" android:stretchMode="columnWidth" > </GridView>
Y, para definir el contenido del GridView
, cree otro diseño XML que contenga ImageView
y ImageButton
. Digamos grid_items.xml
:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/mainContainer" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="5dp" > <FrameLayout android:layout_width="100dp" android:layout_height="100dp" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:gravity="center" > <ImageView android:id="@+id/imgProfilePicture" android:layout_width="fill_parent" android:layout_height="fill_parent" android:adjustViewBounds="true" android:scaleType="centerCrop" android:src="@null" /> <ImageButton android:id="@+id/imgbtnDemo" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="bottom|center" android:background="@null" android:gravity="center" android:src="@drawable/ic_contact_picture" > </ImageButton> </FrameLayout> </RelativeLayout>
Por último, si está familiarizado con el concepto de ListViews
personalizado, con algunas modificaciones, también podrá implementar un GridView
personalizado. Si no está familiarizado con ListViews
o GridViews
, siga este tutorial para ver cómo crear un GridView
personalizado: http://www.coderzheaven.com/2012/02/29/custom-gridview-in-android-a-simple -ejemplo / . O utilice esta Búsqueda de Google para obtener más tutoriales sobre el mismo.
Un punto importante aquí sería, si usted necesita el ImageButton's
para hacer una función cuando se hace clic en ellos, el onClickListener
tendrá que ser configurado en el Adapter
.
GridView
muestra una cuadrícula de Views
. Puede mostrar cualquier cosa que extienda la clase View
. Puede mostrar un LinearLayout
con un ImageView
y un ImageButton
dentro de él.
- Cómo obtener el ancho y la altura de una vista Web en android
- BuildTypes.each String para API en la configuración de Gradle de Android