Android 4.1(Jelly Bean) 在 TextView 和 EditText 元素里对“双向文字顺序”提供了有限的功能支持,允许应用程序在编辑和显示字符的时候,能够同时支持从左到右(LTR)以及从右到左(RTL)的排列格式。Android 4.2目前已经对“从右到左”的文字排列顺序给予了原生级别的全面支持,包括提供了一个布局镜面工具,使得开发者把能够将优质的用户体验带给每一位用户,不管该用户的书写顺序是从左到右,还是从右到左。

Android 4.2保证了该新特性不会影响到目前已经存在程序,如果之前的程序代码不修改,其应用的外观将维持现状。如果你想要修改程序,那么仅仅需要很小的改动,应用就可以自动地被“镜面反射”,这样就能轻易地将系统语言设置为从右到左的书写格式(阿拉伯语,希伯来语和波斯语都采用这种格式)。例如,下面的截图就展示了上述的设置效果:

从左到右的布局方式

从右到左的布局方式

要实现RTL(从右到左)的布局镜面反射,仅仅需要遵循下列步骤就可以做到:在你的应用程序声明文件(manifest)里声明开启RTL mirroring的支持。具体做法是:在manifest.xml声明文件的元素中,添加 android:supportsRtl=”true”

修改应用程序中所有的“left/right”布局属性,改为对应的”start/end”布局

1)如果你的应用程序是针对Android 4.2目标平台(应用的targetSdkVersion或者minSdkVersion是17或者更高), 那么你就应当用“start”和“end”替换原来的“left”和“right”。例如,android:paddingLeft应当被替换为android:paddingStart。

2) 如果你想让你的应用程序与Android 4.2之前的版本保持兼容(也就是与targetSdkVersion或者minSdkVersion为16或者更早的版本),那么你应当既加上“start”和“end”,又加上“left”和“right”。例如,你应当同时写上:adnroid:paddingLeft和android:paddingStart。

为了更精确地控制应用程序在UI上的文字书写顺序(从左到右,或者从右到左),Android 4.2 引入了如下的API:

在使用从右到左的排列方式时,你甚至创建自定义的布局方式,可绘制对象,以及其他资源。仅仅是简单地使用资源匹配器“ldrtl”对你的资源进行一下标识,你就可以把资源定义为“从右到左方向的资源”。在调试和优化从右到左的布局方面,HierarchyViewer目前支持对start/end属性,布局方向,文字方向,文字对齐方式等所有信息的层次化显示。

那么现在是时候为所有的用户开发优美的Android应用程序了,无论用户的文字语言习惯是从左到右,还是从右到左。我们非常期待看到这些优美应用的产生!

android 波斯文排序,Android 4.2原生支持从右到左的文字排列格式相关推荐

  1. android 波斯文排序,java – 在Android中有波斯语(Shamsi或Jalali)日历的库或算法吗?...

    我使用这个算法多年,它是非常准确的. 使用它和享受!

  2. android 脸部识别之3D,Android Q新功能曝光了:原生支持3D人脸识别

    原标题:Android Q新功能曝光了:原生支持3D人脸识别 [PConline资讯]如今不少机型已经支持3D人脸识别,像iPhoneX.iPhoneXR.iPhoneXSMax.华为Mate20Pr ...

  3. android 通讯录字母排序,Android仿微信联系人字母排序效果

    本文实例为大家分享了Android联系人字母排序的具体代码,供大家参考,具体内容如下 实现思路:首先说下布局,整个是一个相对布局,最下面是一个listview,listview上面是一个自定义的vie ...

  4. android 联系人 中文 排序,Android中文联系人排序及检索补丁的原理

    Android中文联系人排序及检索补丁的原理(090819更新) 2009年4月26日,更新了源码和相关文件 很久以前做了这个补丁,有幸的是朋友们都还算喜爱它,没白费功夫.不少朋友来信问它的原理,现在 ...

  5. android列表字母排序,Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音...

    [实例简介]Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音 [实例截图] [核心代码] package com.example.sortlistview; imp ...

  6. android app文档,android App项目需求描述文档.docx

    本app是给外卖配送员用的,系统后台根据一定的逻辑生成或者建立运单,本App读到后台的运单讲外卖送到定外卖的手中 本文档所需详细资料请到/s/1jGGgtLG下载 与后台交互的地方不用实现,有数据显示 ...

  7. android 软件测试文档,Android软件测试文档规范【参考】.doc

    Android软件测试流程规范 V1.0 前言 本文档是Android手机软件测试文档,根据Android系统的实际情况进行修改得到的一份测试流程,主要作为今后Android手机软件测试规范. 这份文 ...

  8. android动画文档,Android 动画系统汇总

    Android动画系统的种类: 1. 属性动画 (Property Animation) 2. 补间动画 (Tween Animation) 3. 帧动画     (Frame Animation) ...

  9. android答辩文档,Android日记本毕业设计答辩ppt

    <Android日记本毕业设计答辩ppt>由会员分享,可在线阅读,更多相关<Android日记本毕业设计答辩ppt(22页珍藏版)>请在人人文库网上搜索. 1.基于基于andr ...

最新文章

  1. 它又来了!C**HashMap是如何保证线程安全的?会用不就完了?
  2. 批处理详细教程(三)
  3. Oracle 12C 多种方式创建PDB
  4. 自动化测试selenium(三) 由于iframe 定位不到元素
  5. javaWeb服务详解(含源代码,测试通过,注释) ——web.xml
  6. 自定义UISwitch
  7. Java基础(五):多线程
  8. 手机摄像头改笔记本外接摄像头
  9. matlab2012a for mac,matlab 2016a mac |matlab 2016a for mac免费版专业版 32位/64位 - 系统天堂...
  10. 电子电路基础 (4)——电阻的认识
  11. for循环中控制事务单个提交问题
  12. 18岁少年盗取1500万日元萌乃币, 逼交易所关停, 引发日本史上第一次加密币盗窃法律诉讼...
  13. 如何优化Urchin配置文件每月数据库的磁盘存储空间
  14. 《Loy解说Eureka客户端源码(一)》
  15. 天龙八部怀旧服服务器维护,新天龙八部怀旧服游戏2月4日全服更新维护公告
  16. Linux signal()
  17. 文本编辑器的制作(C#)
  18. 预测分析 Python ARIMA模型预测(学习笔记)
  19. 【论文阅读】正则表达式也可以被当成神经网络训练吗?[附项目代码与代码详细说明]
  20. 【PV操作】买面包的叫号算法(存疑)

热门文章

  1. [转] 史玉柱:我是怎么做游戏策划的
  2. HP打印机将介质装入纸盒1
  3. 日期累加器(任意时间基础上加上天数,不包括节假日以及周六日)
  4. .海子的诗《姐姐,今夜我在德令哈》
  5. 向出行服务商转型,GFM打造出行产业创新盛会|全球未来出行大会 2018
  6. 土地利用动态监测之遥感监测
  7. 微信云托管如何实现一套代码对应多个环境
  8. 群晖nas和文件服务器的区别,nas云服务器的区别(群晖nas搭建云服务器)
  9. Matlab 矩阵分析(一) 矩阵的秩,极大线性无关组和基
  10. React Native之广告栏Banner实现