Справа налево Язык в Delphi Xe7 Мобильный Android
У меня есть приложение в Delphi Xe7 для Android Mobile. Это хорошо работает для английского языка. Но плохо для фарси или арабского языка или справа налево.'سلام' ------> 'م ل ا س'Я нашел несколько решений
- Компонент DPF для Xe7 и Android. Это плохо для большого приложения. в этом компоненте используйте базовый класс Java для создания компонента, как Java. Я тестирую этот компонент и демонстрационный проект Good Work. но если я добавлю Tabcontrol в мою форму и добавлю просмотр списка в приложении tabcontrol, то он не будет работать и не будет отображаться в виде списка.
использовать FarsiReshaper.pas; это устройство справа налево слово, и я использую этот класс для преобразования строки, чтобы показать справа налево.
Procedure TForm1.Create(Sender:Tobject) var Farsi:TFarsi; Begin Button1.text:=Farsi.Convert(Button1.text) End
Но этот метод неисправен
- Для всех компонентов на форме следует запустить этот код
- Для listView и TreeView компонент должен запускать этот метод для всех элементов и это пустая трата времени
- В режиме редактирования вроде Тедит не работает
Спасибо джавад адель
1 ответ
FireMonkey пока не поддерживает языки RTL. Это на дорожной карте, я считаю. Кажется, это неправильно. Насколько мы можем судить, поддержка RTL даже не входит в план действий Embarcadero.
До тех пор, пока не будет добавлена поддержка RTL, сложно рассматривать Delphi как разумный вариант для вас. Встроенные средства разработки Android имеют всестороннюю поддержку RTL.