admin 管理员组

文章数量: 887021


2024年2月26日发(作者:c语言定义和调用函数)

android values匹配规则

layout: post

title: Android Values文件元素值匹配规则

tags: Android Values Resources

categories: Android

Android有以下几种资源文件类型

6

6

这里integer和string中有元素maximum,当有如下代码:

int value = getResources().getInteger(m);

那么value的值就是6, 这里有一个细节需要注意到,在values文件中,ms和ms是不会进行匹配的,这个是Android编译器匹配资源的规则,ms就只可能去找到对应的integer元素,而不会去找string中的maximums元素,这 quan倒看上去确实有点别扭,但是理解了Android文件匹配的原因,也就不觉得那么奇怪了。

Android文件匹配原理很简单,它会把各种类型的资源布局,图片,资源文件等 都会先解析为R下面的一个Java文件,然后再去做匹配。文件里的对应的元素的名字是唯一的,也就是当两个元素的名字是相同的,它也无法根据资源文件的不同类型来去匹配,所以文件中,如果有两个元素名称是一

样的,那么会只保留最后一次定义的那个元素,其他之前定义的元素会被覆盖掉。

所以有了Android文件匹配规则就不以为奇怪以及再次导致元素覆盖。


本文标签: 元素 匹配 文件 资源 定义