【问题标题】:where R is declared in AppCompatActivity其中 R 在 AppCompatActivity 中声明
【发布时间】:2018-11-02 08:33:34
【问题描述】:

我正在尝试学习 Android 开发并有一些 Java 经验。当使用 Android Studio 生成一个简单的代码时,它会生成一个名为 MainActivity 的类,该类扩展自 AppCompatActivity 。在同一个类中有对 R.layout.activity_main 等的引用。当我说去声明 R 时,它需要到 activity_main.xml 。我认为它应该采用实际声明 R 的基类。我可以知道 R 的 java 类类型是什么以及它在 Android SDK 中声明的是哪个类

【问题讨论】:

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


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

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

    答案来自:Here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-28
      • 2019-07-01
      • 1970-01-01
      • 2010-10-30
      • 1970-01-01
      • 2020-10-24
      • 1970-01-01
      相关资源
      最近更新 更多