Android的资源自适应与国际化

1.自适应不同屏幕的资源

      在Android开发中有一个比较麻烦的问题,Android设备的屏幕尺寸、屏幕分辨率差别非常大,而我们总希望开发的Android应用能够在所有的Android设备上运行,所以开发Android应用时要考虑不同屏幕的适应性问题。
通常来说屏幕资源需要考虑屏幕尺寸、屏幕分辨率、屏幕方向这三个方面。
屏幕尺寸:屏幕尺寸可分为small(小屏)、noraml(中屏)、large(大屏)、xlarge(超大屏)。
屏幕分辨率:屏幕分辨率分为ldpi(低分辨率)、mdpi(中等分辨率)、hdpi(高分辨率)、xhdpi(超高分辨率)、xxhdpi(超超高分辨率)。
屏幕方向:屏幕方向分为横屏(land)、竖屏(port)。
为了使Android应用能够适应不同屏幕,实际上就是为不同尺寸、分辨率都提供相应的布局资源、图片资源。
屏幕尺寸:为layout、values目录添加small、normal、large、xlarge后缀,分别为不同尺寸的屏幕提供相应的资源。
屏幕分辨率:为drawable目录添加ldpi、mdpi、hdpi、xhdpi、xxhdpi后缀,从而为不同分辨率的屏幕提供资源。
屏幕方向:为layout、values目录添加land、port后缀,从而为横屏、竖屏提供相应的资源。

2.Android的国际化

      Java程序国际化的思路就是将程序中的标签、提示信息都放在资源文件中,程序需要支持哪些国家、语言环境就提供相应的资源文件。
Android应用的国际化是比较简单的,因为Android本身就采用了XML资源文件来管理程序中用到的字符串。Android使用res/values目录下的资源文件来保存程序中用到的字符串。那么为了给这些字符串提供不同国家、语言的版本,需要为values目录添加不同国家、语言的版本,不同的values目录的命名方式如下:
values-语言代码-r国家代码
例:如果应用需要支持中文、美式英语两种环境,则需要在res目录下添加values-zh-rCN和values-en-rUS两个目录。
如果应用希望程序的图片资源也能随着国家、语言的环境改变,还需要为drawable目录添加不同国家、语言的版本。不同drawable目录的命名方式如下:
drawable-语言代码-r国家代码
因为前面在不同屏幕的自适应中,为了适应不同分辨率的屏幕,drawable添加了相应的分辨率后缀,那么如果即支持不同的国家、语言环境、又支持不同的分辨率,那么该怎么命名:
直接在国家、语言后缀后面追加分辨率后缀即可。
drawable-zh-rCN-mdpi、drawable-zh-rCN-hdpi
drawable-en-rUS-mdpi、drawable-en-rUS-hdpi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值