其中在AppCompatActivity中声明R

时间:2018-11-02 08:33:35

标签: java android android-studio android-sdk-tools

我正在尝试学习Android开发并具有Java方面的经验。使用Android Studio生成少量代码时,它将生成一个从AppCompatActivity扩展的名为MainActivity的类。在同一个类中有对R.layout.activity_main等的引用。当我说到R的声明时,它指向activity_main.xml。我认为应该将R声明为的基类。我可以知道R的Java类类型是什么,以及在Android SDK中声明的是哪个类

2 个答案:

答案 0 :(得分:0)

android aapt(现在是android plugin 3.0的aapt2)工具会自动为您的所有资源生成R.java类。您可以使用R.java类从应用程序访问所有资源。

R.java是最终类,您不能修改该类,因为它是在构建项目时自动生成的。

答案 1 :(得分:0)

R.java是动态生成的类,在构建过程中创建,用于动态标识所有资产(从字符串到android小部件再到布局),以供在Android应用程序的java类中使用。请注意,此R.java是特定于Android的(尽管您可以在其他平台上复制它,但非常方便),因此它与Java语言构造没有太大关系。看看here,了解更多详细信息。

答案来自:Here