当前位置: 代码迷 >> Android >> 无法解析或不是一个字段(Android开发网站的记事本练习)
  详细解决方案

无法解析或不是一个字段(Android开发网站的记事本练习)

热度:89   发布时间:2023-08-04 10:05:55.0

我正在浏览android dev网站上的记事本练习,目前正在进行练习(在找到)。

我来到教程的最后,发现我在主要的两个关于R文件关系的java文件中有几个错误,例如setContentView(R.layout.notes_list); menu.add(0, INSERT_ID,0, R.string.menu_insert);

我试过清洗和重新生成R.java无济于事。

这些也出现在练习的解决方案中,所以我认为它们是故意的错误,或者是我的日食,但我似乎无法修复它们,任何帮助都会非常感谢!

布局文件夹中是否有布局notes_list.xml? 在strings.xml中是否有一个名为menu_insert的字符串? 这可能是问题所在,因为我认为他们没有在教程中给出所有内容......他们确实在解决方案中使用了它们:

<LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content">
<ListView android:id="@+id/android:list" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
<TextView android:id="@+id/android:empty" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/no_notes"/>
</LinearLayout>

在values文件夹的strings.xml中:

<string name="menu_insert">Add Note</string>

我想您可能必须小心如何使用ctrl-shift-O命令(自动插入文件顶部的“import”语句)。 可能是你得到了“import android.R;” 声明为“奖金”。 我评论了“import android.R;” 声明,一切都很好。

是的,主要的问题是Eclipse导入android.R,当按下ctrl + shift + o时。 解决问题的另一种方法是使用完整路径声明导入:

import com.android.demo.notepad2.R;

您应该检查是否已在您正在使用的任何布局xml文件中向LinearLayout添加了ID。 如果是这种情况,那么你应该寻找一些语法错误的东西,以防止重建R文件。

就像是:

android:id="@+id/linearLayout"

在硬编码字符串时,不要在两个.xml文件中使用空格。 @string/abc是错误的尝试@string/a_b_c

  相关解决方案