0

android R 已经困扰了我很长一段时间了。我在我的很多项目中都看到过,有时它们会消失,有时我不得不重新创建一个项目,等等。但这并不能解决我当前项目的任何问题。

从逻辑上讲,我怀疑 XML 文件包含错误,但我找不到它。

我使用 Eclipse 作为我的开发环境,这是我的main.xml

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

    <ImageView
        android:id="@+id/imgLogo"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:contentDescription="@string/title"
        android:src="@drawable/ic_launcher" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="@string/title"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <Button
        android:id="@+id/btnNewTime"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/overview" />

    <Button
        android:id="@+id/btnOverview"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/overview" />

    <Button
        android:id="@+id/btnValues"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/values" />

    <Button
        android:id="@+id/btnExit"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/exit" />

</LinearLayout>

这是我的strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">Werkregistratie</string>
    <string name="title">Werkregistratie</string>
    <string name="overview">Overzicht</string>
    <string name="values">Salaris/reiskosten aanpassen</string>
    <string name="exit">Afsluiten</string>
</resources>

我无法找到问题,所以我真的希望你能帮助我。

4

6 回答 6

1

好的,这似乎只是 eclipse 中的一个错误,相当多的答案是部分正确的。确保名称有效(在某些情况下您可以使用 Lint)。确保 xmls 有效。然后检查您的构建路径是否有错误。之后做一个项目清理,一切都应该没问题。

此外,这个问题在新的 android sdk 中并没有出现太多,所以他们修复了一些看起来像的东西。

于 2014-07-23T03:12:00.543 回答
0

如果你的包名是“com.example.test”

然后尝试这样的事情-

findViewById(com.example.test.R.id.textview1);

不像这样-

findViewById(R.id.textview1);

(* 仅在未生成 R 文件时使用)

于 2012-07-08T19:16:47.930 回答
0

我尝试了你的 xml 并且它对我来说很好,希望你的 java 类代码可能有一些问题。尝试找出您内部的问题并确保清理项目。一切顺利 :)

于 2012-07-08T19:18:33.140 回答
0

如果你的包名是com.foo.bar.package,那么你需要import这样:

import com.foo.bar.package.R;

然后findViewById应该使用这个符号工作:

Button btnValue = (Button)findViewById(R.id.btnValue);

有时,当涉及到“资源丢失”时,Eclipse 可能会非常令人讨厌,因为无法找到R未生成的文件。

于 2012-07-08T19:19:33.027 回答
0

我今天从工作区导入应用程序 src 时遇到了这个问题。使用 R 的所有代码行都显示错误。

我在某处读到我应该从属性/android 视图中将tagetSDK 设置为4.0。清单中的 minsdk 版本为 8。

它就像魅力一样。

还有一件事可能是任何 res 文件/布局/drawable 的名称都带有大写字母的问题。有时 Thumbs.db 在可绘制文件夹中生成并导致相同的问题。

谢谢!!!

于 2012-07-08T21:09:21.683 回答
0

我想我以前遇到过这个问题,我可以解决它的唯一方法是重新尝试一个新项目并导入我的代码。我知道效率低下且笨拙,但这就是我在令人沮丧的几个小时后设法生成 R 文件的方法。

如果你不能在这里找到可以帮助你的东西

于 2012-07-08T21:14:12.773 回答