Tengo una columna 3 GridView
y 4 artículos.Centrar niños en un GridView
Ocurre que tres de ellos aparecen en la primera fila, y el último en la segunda fila, pero este alineado a la izquierda. Solo quería saber si es posible hacer que parezca centrado en el GridView
. Como una 'T', no sé si me explico ... xD
Gracias :-)
Editar:
Ésta es la disposición que contiene el GridView
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/section_title_root"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bg_gd_home_grid">
<ImageView
android:src="@drawable/home_grid_txori"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="40dip"
android:layout_centerHorizontal="true"/>
<GridView
android:id="@+id/home_grid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:numColumns="3"
android:drawSelectorOnTop="true"
android:layout_marginBottom="30dip"
android:layout_marginLeft="30dip"
android:layout_marginRight="30dip"
android:padding="5dip"
android:listSelector="@android:color/transparent"
android:background="@drawable/bg_home_grid_item"
/>
</RelativeLayout>
Por cierto, android:layout_centerHorizontal="true"
no funciona en GridView
Solución Editar:
Este problema es del año pasado, pero se me ha pedido para publicar la solución y tuve que encontrar mi edad repo conseguirlo :-)
Como dije abajo en los comentarios, No pude lograrlo solo con XML, así que tuve que engañar a un elemento falso no clicable + no enfocable en la 3ª posición.
Era mi primera aplicación, así que no implementé la solución recomendada "ViewHolder". Recomiendo encarecidamente su uso
Así es como mi método getView() se ve como en el adaptador:
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = (RelativeLayout) mInflater.inflate(
R.layout.home_grid_item, null);
}
/* In order to have 4th item centered in the 2nd row, we create an empty 3rd item */
if (position == 3) {
convertView.setFocusable(false);
convertView.setClickable(false);
} else {
ImageView imageView = (ImageView) convertView
.findViewById(R.id.image);
imageView.setImageResource(mThumbs[position]);
TextView textView = (TextView) convertView.findViewById(R.id.title);
textView.setText(mTitles[position]);
}
convertView.setTag(mTabTags[position]);
return convertView;
}
No funciona ... ¡gracias! –
¿Puedes publicar tu xml? – Herter
intente mirar por aquí .. http://developer.android.com/reference/android/widget/GridView.html#attr_android:gravity – Herter