2

第二行此代码中的 R.java 有错误

 public static final class id {
    public static final int 2ndQ=0x7f05000a;
    public static final int FirstQuestion=0x7f050000;
    public static final int MainTitle=0x7f050003;
    public static final int SecondQuestion=0x7f050008;
    public static final int btnstrt=0x7f050007;
    public static final int editText1=0x7f050001;
    public static final int imageView1=0x7f050006;
    public static final int maindescrip=0x7f050004;
    public static final int radio0=0x7f05000b;
    public static final int radio1=0x7f05000c;
    public static final int radio2=0x7f05000d;
    public static final int radioGroup1=0x7f050009;
    public static final int toq1=0x7f050005;
    public static final int toq2=0x7f050002;
    public static final int toq3=0x7f05000e;

它给了我这个错误

标记“2”的语法错误,删除此标记

我尝试删除该行,因为它是我不再拥有的 TextView 的 ID。事实上,我将 TextView 的 ID 从“2ndQ”更改为“SecondQuestion”。

如何摆脱错误?它阻止我测试我的应用程序。

编辑:只是为了澄清这一点,我的项目中根本不存在该 id。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/SecondQuestion"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:gravity="center"
        android:text="@string/secondQ"
        android:layout_marginTop="30dp"
        android:layout_marginLeft="20dp"
        android:layout_marginRight="20dp"
        android:textSize="25dp"
        android:textStyle="bold" />

    <RadioGroup
        android:id="@+id/radioGroup1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/2ndQ"
        android:layout_below="@+id/2ndQ"
        android:layout_marginTop="74dp" >

        <RadioButton
            android:id="@+id/radio0"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="@string/q2Answer1" />

        <RadioButton
            android:id="@+id/radio1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/q2Answer2" />

        <RadioButton
            android:id="@+id/radio2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/q2Answer3" 
            android:gravity="center" />
    </RadioGroup>

    <Button
        android:id="@+id/toq3"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:text="@string/buttonForQuestion3"
        android:textSize="20dp"
        android:clickable="false" />

</RelativeLayout>
4

6 回答 6

7

我尝试删除该行,因为它是我不再拥有的 TextView 的 ID

听起来 R.java 文件没有更新,请尝试以下一些通用指针:

  • 不要手动编辑文件gen夹中的任何文件,因为这些文件是为您自动构建的。
  • 如果您发现它不同步,请尝试刷新项目。
  • 如果那不起作用,请尝试清洁(项目->清洁)
  • 如果这不起作用gen,请从 Eclipse 中删除该文件夹(不要惊慌),然后它将由 Eclipse 重建 - 但是如果存在某种编码错误,它可能不会立即执行此操作。
于 2012-04-07T10:07:48.387 回答
3

从 Android 开发开始,我收到了一个非常相似的错误消息。就我而言,这是一个 res 字符串上的简单命名错误 - 我有 android:id="@+id/edit/message"。第二个 / 应该是一个下划线。

唯一的错误消息是在 R.java 中,所以在开始开发时非常混乱。

于 2013-04-09T15:04:48.440 回答
2

5个小时后,我终于来到了这个地狱的底部!我也有这个错误,但上述方法都没有帮助,显然我错误地重命名了属于android内部的文件中的一个id,不仅如此 - 我重命名为非法(@+id/@+id /checkbox_spinner) 使用 notepad++ 搜索,我找到了 c:\Users\.android\build-cache 中的文件...我删除了 build-cache 文件夹,AS 的下一次启动自然会变慢,因为它创建了所有必要的文件,并且哇!问题已解决!

于 2017-10-13T14:25:01.470 回答
1

清理并构建您的应用程序并尝试再次运行您的应用程序。不要在自动生成的 R.java 中执行任何操作。转到项目并清理它,构建它。然后尝试再次运行。

于 2012-04-07T10:10:44.487 回答
0

确保 xml 文件中的元素不为空。当有一个未使用或没有值的空元素时,R 文件不喜欢它。例如:

第 1 行:平均高度

第 2 行:

当第 2 行有空值时,R 文件不喜欢它。

于 2014-06-20T13:24:03.523 回答
0

我也有这个确切的问题。我的 R.id 中有错误说要删除令牌,但我无法删除它,因为它不再在我的 xml 中的任何地方定义。所以我有一个

public static final int 2ndQ=0x7f05000a;

在我的 R.java 中,即使我清理了我的项目,我也无法摆脱它。

为了摆脱它,我不得不

  • 重新创建一个带有“2ndQ”这个错误 ID 的 TextView
  • 清理项目并更新 R.java
  • 然后删除我刚刚创建的牺牲的TextView

瞧,你的 R.java 应该是固定的。

于 2015-03-08T16:50:14.367 回答