码迷,mamicode.com
首页 > 其他好文 > 详细

阿拉伯语系处理方法

时间:2015-08-03 21:06:25      阅读:755      评论:0      收藏:0      [点我收藏+]

标签:

1,在Androidmanifest.xml文件中的application标签内加上 android: supportsRtl="true"属性;

2. 某一个对象需要支持rtl,需要增加这个android: layoutDirection ="rtl";
2,对于布局问题,一个窗口界面没有右对齐,需要在res目录下增加layout-ldrtl目录,把布局文件重新在这个目录下书写;如果不采用该方法,需要在原来的布局文件中修改以下内容:
    layout_marginLeft 修改为 layout_marginStart
    layout_marginRight 修改为 layout_marginEnd
     layout_alignParentLeft 修改为 layout_alignParentStart
     layout_alignParentRight 修改为 layout_alignParentEnd
     android:layout_toLeftOf 修改为 android:layout_toStartOf
     android:layout_toRigntOf 修改为 android:layout_toEndOf
3,对于字符串方向问题,阿拉伯字串是有两个方向的,字串中有英文的,方向就会自动左到右显示。例如:一串英语后加阿拉伯,波斯语,方向以英语为准,就会左到右显示,这样就会产生方向性bug;需要在该
   字串前加一个方向符\u200f;这个是一个空白的阿拉伯区域的unicode;加入这个字符后方向就会右到左;
4,对于一些界面的阿拉伯数字1,2,3等,如果需要修改为阿拉伯语的数字形式?, ?, ?,需要在代码初使用String.format("%d", int)方法来转换;


EditText中添加属性android:textDirection="locale"就可以自动根据语言适配对齐方式

android: supportsRtl="true"属性不起作用:
   原因在于  Androidmanifest.xml中对最小SDK版本号和目标版本号做了要求:

             <uses-sdk android:minSdkVersion="11"
                android:targetSdkVersion="21" />

   而使用android:supportsRtl="true"要求最低SDK版本号为17,再将上面那两句直接删除或者是改动为>=17的版本号就可以。

阿拉伯语系处理方法

标签:

原文地址:http://my.oschina.net/kingfrog/blog/487234

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!