Изменить направление строки действия справа налево

Я создаю приложение для Android для правового языка. И я использую ActionBarSherlock (совместимую панель инструментов панели задач Android).
То, что я точно хочу, так это то, как изменить направление действия панели на RTL, даже если пользователь не устанавливает язык Locale по умолчанию RTL.
Если у кого-то есть идея даже для стандартного бара Android, это ценно и может помочь, пожалуйста, поделиться им.
благодаря

Solutions Collecting From Web of "Изменить направление строки действия справа налево"

Начиная с Android API уровня 17+ он поддерживает RTL изначально. Чтобы заставить весь ваш макет быть RTL, включая ActionBar, выполните следующие действия.

Отредактируйте AndroidManifest.xml и добавьте android:supportsRtl="true" в свой <application> а затем добавьте следующую строку в начало вашего действия onCreate () forceRTLIfSupported(); А затем вставьте следующую функцию в свою активность.

 @TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1) private void forceRTLIfSupported() { if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1){ getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL); } } 

Конечно, это полезно только для отладки. Используйте View.LAYOUT_DIRECTION_LOCALE для View.LAYOUT_DIRECTION_LOCALE сборки, чтобы ваш макет был изменен только тогда, когда пользователь выбрал расположение / язык системы, поддерживающий RTL.

Надеюсь, это поможет.

Мы должны верить в правильное правило программирования:

Все будет возможно, когда вы будете знать свои инструменты.

Итак, теперь вы можете использовать эту библиотеку, чтобы по-настоящему RTLize ваши панели действий : https://github.com/semsamot/ActionBarRTLizer

И, конечно же, он совместим с API Level 7+ .

Бойгер прав. Приложение «Nabz Bazar», которое вы упомянули, не выравнивается справа на каждой версии Android. Как вы можете видеть здесь, ABS на самом деле ничего не делает на Android 4.0 или новее, а скриншоты этого приложения находятся на 4.2 android.

Я уверен, что вы не сможете делать то, что вы просите. Шаблон ActionBar очень специфичен, и поддерживающие его библиотеки будут поддерживать только определенный шаблон (который имеет значок слева вверху, а затем выдает заголовок и кнопки действий справа).

Изменение теста так же просто, как изменение языка и текста в вашем приложении (как вы уже указали).

Изменение положения элементов внутри самого ActionBar не будет поддерживаться библиотеками, поддерживающими стандартный шаблон ActionBar, поскольку то, что вы описываете, не поддерживается шаблоном пользовательского интерфейса.

Я думаю, вы должны оставить AB как есть. Нет необходимости переключать заказ, так как в любом случае нет правого-левого положения – и изменение этого будет чрезвычайно раздражать ваших пользователей.

Итог, вы не сможете этого с существующими библиотеками – и вы, вероятно, не должны так или иначе.

Используйте это, он будет делать макет из rtl, но это в корневом каталоге вашего xml

  android:layoutDirection="rtl" android:textDirection="rtl"