多语言适配之阿拉伯语

在这里插入图片描述

多语言配置:
1.获取当前系统语言的方法:

  • Locale locale = getApplicationContext().getResources().getConfiguration().locale;
  • String language = locale.getLanguage();

2.布局适配问题:

  • 当布局不做调整的时候,即supportsRtl = “false"的时候,只是语言的显示顺序发生了改变,要注意显示阿拉伯语时的有边界限制
  • 一些图标设置显示在左边,在阿拉伯语的语境下,也要注意设置到右边,比如:textview.setDrawable(xx,xx,xx,xx)

3.小技巧:
在多语言的环境下,有些功能,是给我们自己用的,比如收集反馈信息,虽然语言不同,显示给用户的是其自己的语言,但用户在选择不同的反馈信息条目后,还是要上传到后台给我们自己看,在这种情况下,最终上传的日志的语言可以设置为英文,这样,我们自己后台查看反馈日志的时候,便可以简单的看出反馈的问题,但用户自定义输入的
内容,需要翻译才可以读懂。

        Configuration configuration =  new Configuration();
        configuration.setLocale(new Locale("en"));
        Resources resources = new Resources(getResources().getAssets(), getResources().getDisplayMetrics(), configuration);
        //获取该字符串下指定为英文的字符串
        problems.add(resources.getString(R.string.upload_column_abnormal));
        problems.add(resources.getString(R.string.upload_live_time_shift_abnormal));
        problems.add(resources.getString(R.string.upload_playback_abnormal));
        problems.add(resources.getString(R.string.upload_record_abnormal));
        problems.add(resources.getString(R.string.upload_apk_abnormal));

4.在阿拉伯语,数字是从左向右读取,字母是从右向左读取,所以,EditText中,输入字符串,光标是显示在右边的,如果刚开始输入数字则光标是显示在左边的,在接着输入字符,又会跑到右边,当输入第二个数字后,第二个数字会跑到第一个数字的前面,并且出现双光标,这都是阿拉伯语系显示的正常现象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值