2011-05-21 34 views
0

我在添加新布局XML文件后多次解析R时出现问题。我使用Eclipse和API 8.有时在我“清理”项目后关闭,然后重新打开项目。我试图添加“导入android.R”,但它没有帮助。有人说这是因为一些布局XML文件有错误,但该文件看起来是正确的。添加新布局XML文件后无法解析R

下面是一个XML文件,res/layout/status.xml,我有问题:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
    <Button android:text="Button" android:id="@+id/button_tmp" android:layout_height="wrap_content" android:layout_width="wrap_content"></Button> 
</LinearLayout> 

,这里是我如何使用它:

public class StatusActivity extends Activity { 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.status); 
    } 
} 

一两件事,这个XML文件有问题在Eclipse的“Package Explore”面板中标记,但main.xml有不同的图标。我现在只有两个布局XML文件。

我是否需要在Eclipse中做一些特殊的事情来添加新的布局XML文件?

感谢您的帮助!

更新的图标,在“包探索”面板中的截图:

enter image description here

+0

你对status.xml看到了什么样的图标?你能提供一个快照吗? – 2011-05-21 07:23:19

+0

嘿Jaydeep,我上传了截图。谢谢。 – evergreen 2011-05-21 16:02:45

回答

1

终于搞明白了。布局XML文件没有问题。问题是StatusActivity类不在顶层包中,但自动生成的R类位于顶层包中。因此,在Status.java中,我需要导入它,但是在顶级包中的主要活动类中,我不这样做。这就是为什么main.xml有效,但status.xml没有。

至于不同的图标,它表明该文件是否由SCM系统管理。由于status.xml是新的,所以它有一个问号。

0

单击该在Package Explorer和尝试F5刷新键 - 忘记是谁第一个建议,但它打败。重新启动Eclipse !

+0

谢谢,克里斯。我忘记在我的问题中提到我也尝试在Eclipse中刷新。 – evergreen 2011-05-21 16:06:45

0

尝试在LinearLayout中进行更改。

android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
+0

谢谢。我尝试了“fill_parent”,但仍然没有运气。根据SDK的示例,API 8使用“match_parent”,API 9使用“fill_parent”。我的构建目标是API 8。 – evergreen 2011-05-21 16:05:59

0

你测试Project > Clean在这个时候? 有时你应该清理项目重建R文件。