Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R.java类的概念_Java_Android - Fatal编程技术网

R.java类的概念

R.java类的概念,java,android,Java,Android,我只有几个问题来巩固我对R.java类的理解 (1) :它是在运行时还是编译时生成的? 为了测试它,我用一个文本创建了一个新的“按钮”,“按钮”的“id”是“actMain\btnTest”,它在“strings.xml”中的文本的name属性是 “btn_测试”。然后在java文件中,我使用“findViewById”引用了“Button”,它是可以访问的。因此,我认为“R.java” 可以在编译时生成。但是,随后我导航到“R.java”,以确保“actMain_btnTest”和“btn_t

我只有几个问题来巩固我对R.java类的理解

(1) :它是在运行时还是编译时生成的? 为了测试它,我用一个文本创建了一个新的“按钮”,“按钮”的“id”是“actMain\btnTest”,它在“strings.xml”中的文本的name属性是 “btn_测试”。然后在java文件中,我使用“findViewById”引用了“Button”,它是可以访问的。因此,我认为“R.java” 可以在编译时生成。但是,随后我导航到“R.java”,以确保“actMain_btnTest”和“btn_test”被添加到“R.java”,但令人惊讶的是,它们并不存在!! 现在,出现了一个新的问题,“id”在还没有添加到“R.java”时是如何访问的

(2) :R类和Android资源管理器之间的关系是什么?他们是如何合作的?只是为了本地化吗

(3) :因为“R类”包含包含应用程序资源“id”的子类,并且每个“id”都分配给一个值。比如说,

public static final int request_identifiers=0x7f060019;

“0x7f060019”指的是什么?它是内存中的地址吗

它是aapt(Android资产打包工具)自动生成的文件,包含res/directory所有资源的资源ID


如果在activity_main.xml文件中创建任何组件,则会在此文件中自动创建相应组件的id。此id可在活动源文件中用于对组件执行任何操作。

有帮助,请参阅以下说明和链接: