Intereting Posts
USB-соединение и отладка одновременно Какие атрибуты темы мне нужно переопределить, чтобы изменить синий цвет подсветки моих диалогов? Сторона сервера GCM PHP – Несанкционированная ошибка 401 Как узнать, оценил ли конкретный пользователь приложение для Android? GetChildFragmentManager () на программном (динамически) добавленном фрагменте? Компиляция ошибок com.squareup.retrofit: converter-simplexml: 2.0.0-beta2 Выбор TextView с помощью Spannable и LinkMovementMethod Как поймать мягкую клавиатуру «введите / сделать» нажмите? Сохранить интерфейс (прослушиватель) в onSaveInstanceState Не удается разрешить символ: «HttpClient», даже после добавления зависимости Признание активности перестает получать обновления, когда телефон переходит в режим ожидания (выключено) Android: как работает приложение Protector? Java runOnUiThread и Thread.sleep Как отключить раскладку ящика с одной стороны? Как добавить панорамное изображение в приложение Google для картона?

Андроидная сетка вид места элементы справа налево

Я работаю над андроидным приложением с арабской версией .

В одном из интерфейсов у меня есть gridView. Поэтому, чтобы отображать элементы в правильном порядке, я должен отображать элементы в GridView справа налево (и с корнем сверху вниз). Для этого я попытался добавить эти атрибуты в GridView:

android:gravity="right" android:layout_gravity="right" 

К сожалению, элементы все еще отображаются слева направо.

Любая идея сделать это правильно?

Вы можете добиться этого этим уродливым обходным путем:

  1. Добавьте эту строку в свой GridView в XML:

    Android: rotationY = "180"

  2. Также добавьте одну и ту же строку в элемент GridView в XML:

    Android: rotationY = "180"

В общей сложности это дает вам вращение на 360 °, поэтому похоже, что GridView помещает элементы справа налево.

Как сказал Нибха Джайн, его право. Также вам нужно добавить свойство «android: layoutAnimation» в GridView xml, как показано ниже.

 <GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/grid" android:layoutAnimation="@anim/layout_grid_right_to_left" 

А также вам необходимо определить файл анимации с атрибутом «android: direction», который фактически отображает ваши элементы справа налево или любое поддерживаемое направление.

Файл layout_grid_right_to_left.xml внутри папки с анимацией

 <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" /> 

@ Anim / fade выглядит следующим образом:

 <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" /> 

Это мои предпочтения. Добавьте / удалите атрибуты, которые соответствуют вашим потребностям. Играть с этим.

Основываясь на ответе Траниньо:

  1. Добавьте эту строку в свой GridView в XML:

    Android: rotationY = "180"

  2. Также добавьте одну и ту же строку в элемент GridView в XML:

    Android: rotationY = "180"

Выполните следующие действия:

  • В своей GridActivity удалите это:

      gridView.setOnClickListener(...); 
  • Теперь перейдите в свой gridAdapter и добавьте onClickListener в gridImage, поэтому ваш код должен выглядеть следующим образом:

      gridImage.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //Do something } }); 

Это будет обрабатывать клики, как правило, на изображениях GridView.

Желаю, чтобы это помогло 🙂

Добавьте эту строку в свой GridView в 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"/> 

Локальный язык устройства – английский: введите описание изображения здесь

Локальный язык устройства – parsian: введите описание изображения здесь