Каков статус языков справа налево на Android?

Мне нужно создать приложение со строками на многих языках, включая языки RTL (справа налево) Я хочу знать, каков текущий статус поддержки RTL (справа налево) на Android (даже в последней версии API), например:

  1. можно ли динамически / статически проверить, является ли текущий язык устройства типом RTL? Я знаю, что можно получить текущую локаль, но мне нужен более общий способ проверить, является ли текущий язык RTL. Например, для английского и французского языков он вернет false, но для арабского и иврита он вернет true.

  2. можно ли настроить автоматическое зеркальное отображение макета для языков RTL? Например, если у linearLayout (с горизонтальной ориентацией) были дочерние элементы 1-> 2, теперь у него будет 2 <-1, а новые дочерние элементы будут созданы слева.

  3. есть ли квалификатор для добавления к папкам ресурсов, которые будут обрабатывать все языки RTL? Например, «res / layout» для LTR (слева направо), а «res / layout-rtl» для языков RTL.

  4. кажется, что помощник по содержанию eclipse предлагает "android: layoutDirection" для linearLayout и "android: textDirection" для textView, но когда я выбираю их, я получаю ошибку компиляции, что он их не распознает. Я также не могу найти больше информации об этих атрибутах в Интернете.Что они означают и почему я не могу их использовать?

РЕДАКТИРОВАТЬ: похоже, что в Android 4.1 есть некоторые улучшения для языков RTL. Интересно, что это такое и где я могу о них прочитать.

14
задан j0k 5 June 2013 в 11:48
поделиться