从零学Android(四)、适配不同的Android设备

本文介绍了如何使Android应用适配不同设备,包括语言、屏幕大小和Android系统版本。通过创建不同语言的资源文件夹实现多语言支持,针对不同屏幕尺寸创建布局资源,以及使用不同密度的图片资源确保显示质量。同时,讨论了如何支持不同Android版本,包括设置minSdkVersion和targetSdkVersion,并利用Android Support Library进行兼容性开发。
摘要由CSDN通过智能技术生成

我们知道,现在的Android设备有许多的形状和尺寸。而我们的APP用户可能再使用各种各样的Android设备,为了让我们的APP能在这些设备上成功且正常运行,我们的APP就需要去适配不同的设备配置。我们一般从下面三个方面去考虑适配:语言屏幕大小以及Android的系统版本

1.适配不同语言

我们的用户大部分都是国人,但是也有可能是美国人,法国人啥的..这个时候我们的APP如果只支持中文的话,自然就不行了。当然的,我们肯定也不能每种语言都做一个APP,那样的话估计没人来搞Android开发了。Android提供了一种机制,我们可以在APP项目开发时提供几种不同语言的资源,在不同的语言版本下就能显示不同的语言文字,这样我们的APP就能同时满足不同国家的人的需求了。我们看看具体的做法:

在Android开发中,将UI字符串从我们的APP代码中分离出来,将它们放在一个外部文件中,是一个很好的做法,也是我们应该去做的。Android的资源文件夹res/的作用也是为此。

为了支持不同的语言,我们需要在res/资源目录下创建一些values文件夹,这个文件夹的命名规则为"values"+连字符"-"+ISO国家代码,比如values-fr/代表其下的资源都是为国家语言代码为"fr"的国家即法国准备的,Android系统会根据设备的区域动态加载相应的资源。假如我们希望支持西班牙语(国家代码ES)和法语(国家代码FR),我们需要建立如下的字符串资源目录:

	MyProject/
    	    res/
       		values/
           	    strings.xml
       		values-es/
           	    strings.xml
       		values-fr/
           	    strings.xml
然后我们就可以在对应的区域语言资源文件中加入对应的语言文本。比如,现在我们创建一个新的项目:SupportProject,然后在它的app/res下建立2个新的语言资源文件夹,分别为 values-es/values-fr/,如下:

然后在这两个文件夹下,分别创建一个strings.xml字符串资源文件,添加一个简单的名为txt_hello_world的字符串资源,同样的在默认的values/strings.xml中也加入这个字符串(PS:Android的默认区域语言为English)。下面是3个文件夹下的txt_hello_world的定义:

①values/strings.xml

<resources>
    <string name="app_name">SupportProject</string>
    <string name="action_settings">Settings</string>

    <string name="txt_hello_world">Hello World
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值