0

我在这里遇到了非常令人沮丧的问题。我有这个代码:

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

我收到了这个错误:

类型不匹配:无法将表单视图转换为按钮

但是button1一个按钮!!在我的 XML 布局文档中,按钮的声明如下:

<Button
   android:id = "@+id/button1"
   android:layout_width = "wrap_content"
   android:layout_height = "wrap_content"
   android:text = "Next Activity" 
/>

在我的 R.java 中:

public static final class id {
   public static final int button1=0x7f050000;
}

为什么我得到并错误地说我的按钮实际上是一个按钮时是一个视图......这是一个谜。

4

3 回答 3

1

删除android.R from packages并导入您的R.

import com.companyname.productname.R;

并更改按钮参考

Button b = (Button)findViewById(R.id.button1);
                                ^^^^^^^^^^^^
于 2012-05-25T12:03:52.153 回答
1

您需要将视图转换为 Button:

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

更多详细信息,请访问http://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html

另外,正如其他人回答的那样,id是错误的。

于 2012-05-25T12:04:51.367 回答
0

你的错误在这里-Button b = findViewById(android.R.id.button1);

将上面的行替换为 findViewById(R.id.button1);

于 2012-05-25T12:05:01.047 回答