在Android SDK中使用“findViewById”时找不到任何“id”?

时间:2011-08-27 23:23:21

标签: java android windows eclipse

首先我要提一下,我对编程完全不熟悉。 我使用“图形布局”在.xml文件中创建了一个按钮。我可以看到按钮ID是“@ + id / button1”。以下是文件中的.xml代码:

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

当我转到java文件并尝试找到“按钮”时,我在“setContentView(R.layout.main);”的行下面输入“findViewById(R.id)”。然后单击“ctrl + space”,它显示“no default proposal”。 .xml代码是:

package com.soren.activies;

import android.app.Activity;
import android.os.Bundle;


 public class mail extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    Button b = findViewById(R.id)


}

希望你能在这里帮助我,因为我真的可以帮到我。 ¨ 顺便说一句,抱歉我的英语不好。

7 个答案:

答案 0 :(得分:4)

您发布的代码......

Button b = findViewById(R.id)

......应该......

Button b = findViewById(R.id.button1);

此外,请确保在所有小写字母中调用布局文件main.xml

刚刚发现你所说的eclipse说“没有默认提案” - 杰克建议使用'清理'并重建你的项目也可以解决问题,如果项目环境已经腐败(有时在eclipse中发生)。 / p>

答案 1 :(得分:2)

Button b = findViewById(R.id) 

这是正确的答案。

Button b = (Button)findViewById(R.id.button1); 

答案 2 :(得分:1)

我不记得究竟是哪一个,但很多时候你必须先清理或建造你的项目。如果您从项目&gt;中选中“自动构建”自动构建,然后它将在保存时构建,使您可以访问R.id. *自动完成。

答案 3 :(得分:1)

在切换到新文件并尝试查找已创建的更新(例如创建按钮)之前,您必须单独保存每个文件。

答案 4 :(得分:0)

 Button b = findViewById(R.id)

应该是

 Button b =(Button) findViewById(R.id.buttonid)

答案 5 :(得分:0)

更改

import android.R;

import YOUR_PACKAGE_NAME.R;

答案 6 :(得分:0)

你的回答只是

Button b=(Button) findViewById(R.id.buttonid)

如果没有工作 的 CTRL + B