Android 修改阿拉伯语数字显示
2016-04-05 16:01
1001 查看
问题:如下情况,收到反馈说要把阿拉伯数字换成阿拉伯语
问题的原因是values-ar/strings.xml定义如下:
%1$s表示将第一个参数格式化为字符串,因此格式化参数给的是什么便输出什么,如此处给1000便输出1000。
修改的话就是把%1$s改成%1$d,表示将第一个参数格式化为整数,这个时候我们的String.format将会对数字起作用,并按传递的Locale信息格式化数字为当地语言。
代码中如何修改,直接把需要格式化的地方使用%d替换,如下:
String.format(Locale.getDefault(),"%d", value);
如果要求显示数字而不是阿拉伯语如何做。按如上解决问题的逆向思维,只是代码中可以使用如下2种方式:
String.format(Locale.getDefault(), "%s",value);
或者
String.format(Locale.US, "%d",value);
问题的原因是values-ar/strings.xml定义如下:
%1$s表示将第一个参数格式化为字符串,因此格式化参数给的是什么便输出什么,如此处给1000便输出1000。
修改的话就是把%1$s改成%1$d,表示将第一个参数格式化为整数,这个时候我们的String.format将会对数字起作用,并按传递的Locale信息格式化数字为当地语言。
代码中如何修改,直接把需要格式化的地方使用%d替换,如下:
String.format(Locale.getDefault(),"%d", value);
如果要求显示数字而不是阿拉伯语如何做。按如上解决问题的逆向思维,只是代码中可以使用如下2种方式:
String.format(Locale.getDefault(), "%s",value);
或者
String.format(Locale.US, "%d",value);
相关文章推荐
- Android Camera 调用系统相机应用
- 关于Android Dialog中Dismiss和Cancel的解释
- android播放音乐
- Android取消EditText自动获取焦点默认行为
- Activity 的介绍和使用(一)
- android studio下的NDK开发详解(一)
- android AsyncTask介绍
- Android 用Canvas画textview、bitmap、矩形(裁剪)、椭圆、线、点、弧
- Android客户端性能优化
- 管理照相机-录视频(摘自Android官方培训课程中文版(v0.9.5))
- Android中的Toast创建
- Android提权漏洞CVE-2014-7920&CVE-2014-7921分析
- Android日志处理相关
- android5.0 activity动画
- Android_LIFE帮(基于最新百度地图API的开源项目)
- [安卓开发笔记一]Android开发配置opencv环境超详细教程
- 从源码解析Android中View的容器ViewGroup
- Android动态部署四:如何从插件apk中启动Activity(二)
- 管理照相机-拍照(摘自Android官方培训课程中文版(v0.9.5))
- 退出 android 应用程序