Coloque la vista de la grilla de Android de derecha a izquierda
gridview android-gridview (6)
Como dijo Nibha Jain, tiene razón. También debe agregar una propiedad "android: layoutAnimation" a GridView xml como se muestra a continuación.
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/grid"
android:layoutAnimation="@anim/layout_grid_right_to_left"
y también necesita definir un archivo de animación con el atributo "android: direction", que realmente muestra sus elementos de derecha a izquierda o cualquier dirección compatible.
El archivo layout_grid_right_to_left.xml dentro de la carpeta anim
<gridLayoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
android:columnDelay="0.5"
android:directionPriority="row"
android:direction="right_to_left"
android:animation="@anim/fade" />
el @ anim / fade es el siguiente
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromAlpha="0.0" android:toAlpha="1.0"
android:duration="@android:integer/config_longAnimTime" />
Es solo mis preferencias. Agregue / elimine atributos que se adapte a sus necesidades. Juega con ello.
Estoy trabajando en una aplicación de Android con versión árabe .
En una de las interfaces, tengo gridView. Para mostrar los elementos en el orden correcto, tengo que mostrar los elementos en el GridView de la derecha a la izquierda (y del corse desde la parte superior a la inferior). Para hacer eso, traté de agregar estos atributos en GridView:
android:gravity="right"
android:layout_gravity="right"
Lamentablemente, los elementos todavía se muestran de izquierda a derecha.
Alguna idea de hacerlo de la manera correcta?
Puede lograr esto con esta desagradable solución alternativa:
agregue esta línea a su GridView en XML:
android: rotationY = "180"
también agregue la misma línea a su elemento GridView en XML:
android: rotationY = "180"
En total, le da una rotación de 360 °, por lo que parece que GridView coloca los elementos de derecha a izquierda.
Basado en la respuesta de Traninho:
agregue esta línea a su GridView en XML:
android: rotationY = "180"
también agregue la misma línea a su elemento GridView en XML:
android: rotationY = "180"
Haz lo siguiente:
En su GridActivity, elimine esto:
gridView.setOnClickListener(...);
Ahora, vaya a su gridAdapter y agregue onClickListener a la gridImage para que su código se vea como el siguiente:
gridImage.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //Do something } });
Esto manejará los clics normalmente en sus imágenes GridView.
Deseo que ayude :)
agregue esta línea a su GridView en XML:
android:layoutDirection="rtl"
Create one new layout-ldrtl folder and make xml file grid view .
example...
<GridView
android:id="@+id/popoulat_category_list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scrollingCache="true"
android:smoothScrollbar="true"
android:numColumns="2"
android:scrollbars="none"
android:horizontalSpacing="-5dp"
android:verticalSpacing="-5dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_marginStart="5dp"
android:layout_marginEnd="5dp"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"/>
el idioma local del dispositivo es el inglés: introduzca la descripción de la imagen aquí
el idioma local del dispositivo es parsian: ingrese la descripción de la imagen aquí
Además de la respuesta anterior:
android:layoutDirection="rtl"
Idealmente, si desea que sea rtl consciente, entonces solo rtl en las configuraciones regionales donde debería estar:
android:layoutDirection="locale"
También puede hacer que siga el diseño que lo contiene
android:layoutDirection="inherit"