java - 如果我不导入 android.R 会出现语法错误(如果我导入会出现语法错误)

标签 java android eclipse android-fragments

好吧,我有一个问题,我太困惑了,无法正确提出,但现在开始吧:

android 文档中某处指出:

注意:Eclipse 有时喜欢在使用资源的文件顶部添加“import android.R”语句,尤其是当您要求 Eclipse 排序或以其他方式管理导入时。这将导致您的产品中断。留意这些错误的导入语句并删除它们。

我以前注意到过这种行为。第一次是非常糟糕的经历,因为我无法理解发生了什么。无论如何,从那时起,每当我注意到 import android.R;我只是删除它。

我最近的项目使用了最新的 SDK,包括 Master - Detail Activity 向导(创建 fragment )。我在我的 ListFragment 源文件中注意到 import android.R;然后删除它破坏了它,因为它显然需要 android.R 在 onCreate 中使用内置布局“simple_list_item_activated_1”(http://developer.android.com/reference/android/R.layout.html#simple_list_item_activated_1)。

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setListAdapter(new ArrayAdapter<DummyContent.DummyItem>(getActivity(),
            R.layout.simple_list_item_activated_1,
            R.id.text1,
            DummyContent.ITEMS));
}

所以我把它加回去,没问题。问题在于包含的 android.R 我看不到我定义的任何 XML 内容。在我的例子中,我尝试使用我在 onCreateOptionsMenu 中创建的菜单。

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    super.onCreateOptionsMenu(menu, inflater);
    //MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.menu_checklist_list, menu);
    R.layout.
}

所以我的问题是,如果我不导入 android.R,那么 onCreate 就会崩溃;如果我导入 android.R,那么 onCreateOptionsMenu 就会崩溃。该死的,如果我这样做,该死的,如果我不这样做。 哭泣

:'(

最佳答案

这通常会发生,因为:

  1. 带有 ADT 的 Eclipse 有一些错误。
  2. 您正在使用 android.R 文件中的 R 资源。

要解决此问题,请删除 import android.R 语句。现在一些错误会消失,如果错误是因为#2,一些新的错误会出现。滚动到新错误。它们应该是这样的行:

R.layout.simple_list_item_activated_1

现在只需将 android. 作为 R 变量的前缀,错误就会消失。

此外,每次发生与 R 文件相关的错误时,您都应该清理项目。

关于java - 如果我不导入 android.R 会出现语法错误(如果我导入会出现语法错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11486253/

相关文章:

java - 我可以使用NotificationCompat.BigTextStyle而不会在旧设备上崩溃吗?

java - 休息过滤器 : registered in SERVER runtime does not implement any provider interfaces applicable in the SERVER runtime

java - 在 Java 应用程序中使用 Liquibase 迁移时出现许可证错误

android - Gradle依赖版本

android - 如何录制(和处理?)可从 Android 流式传输的视频

java - 如何每次使用列表中的不同值来应用使用 .map lambda 表达式的操作?

java - Android:使用位图使用android studio显示图像时出错

java - 如何在剪贴簿中定义类或导入类?

android - 使用 Renderscript 支持库获取不同平台的不同错误

java - Eclipse 存储库状态冲突错误