Android开发中的R文件

您所在的位置:网站首页 专利R文件是什么 Android开发中的R文件

Android开发中的R文件

2024-07-09 03:25| 来源: 网络整理| 查看: 265

一、R文件

当 Android 应用程序被编译,会自动生成一个 R 类,其中包含了所有 res/ 目录下资源的 ID,如布局文件,资源文件,图片(values下所有文件)的ID等。在写java代码需要用这些资源的时候,你可以使用 R 类,通过子类+资源名或者直接使用资源 ID 来访问资源。

PS:添加资源的命名规则:资源文件只能以小写字母和下划线做首字母,随后的名字中只能出现 [a-z0-9_.] 这些字符,否则R.java文件不会自动更新

R.java文件是活动的Java文件,如MainActivity.java的和资源如strings.xml之间的胶水

二、R.java文件中资源ID的含义

在Android中资源的使用几乎无处不在,layout、string、drawable、raw、style、theme等等都是。这些资源会在编译过程中被打包进APK中(res文件夹)或者被打包成独立的资源APK包(比如framework-res.apk)。但是这些资源都会被赋予独一无二的ID即资源索引来方便系统访问。这些资源索引由Android的工具AAPT(Android Asset Packing Tool)生成的八位十六进制整数型。 

 

中间 02 所在位置值代表资源ID对应的资源的类型,分别是: 02:drawable     03:layout      04:values     05:xml     06:raw    07:color     08:menu

PS:分配resource id的主要逻辑实现是在framework/base/tools/aapt/Resource.cpp 和 ResourceTable.cpp

三、通过R文件来实现资源调用 1、java代码中使用 //获取文字 getResources().getText(R.string.name);//获取string类型的res数据 getResources().getString(R.string.name); //图片 getDrawable(R.drawable.icon); //颜色 getResouces().getColor(R.color.red); //布局 setContentView(R.layout.main); //控件 findViewById(R.id.txt_name)

上面的方法都是使用context/MainActivity.this来调用,比如context.getString(R.string.name)。

2.XML代码中使用

通过@xxx即可得到,比如这里获取文本和图片:

参考文章Android的R.java文件和Android开发中的R文件

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3