我是eclipse的新手,刚开始写一些代码(实际上只是从网站上复制粘贴)。谁能帮我解决这个问题?
错误出现在 R.id.toggleButton1
上,我添加了这一行
android:id="@+id/toggleButton1"
在我的布局 activity_main.xml
中,但错误仍然存在 :(
错误是:
toggleButton1 cannot be resolved or is not a field
Java 源代码:
package com.example.ledgo;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Toast;
import android.widget.ToggleButton;
public class MainActivity extends Activity {
ToggleButton tgbutton;
private Activity activity;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
activity = this;
tgbutton = (ToggleButton) findViewById(R.id.toggleButton1);
tgbutton.setOnClickListener(new OnClickListener() {
...
我的布局 xml 或称为 activity_main 的代码:
<?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="match_parent"
android:gravity="center"
android:orientation="vertical" >
<ToggleButton
android:id="@+id/toggleButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
...
最佳答案
问题:Eclipse 告诉您 toggleButton1
未被识别为 R.id
的字段。这可能是因为 R.java
没有正确生成。
解决方案:要强制 eclipse 重新生成 R.java
,请清理并重建您的项目。这可以在 Eclipse 中通过 Project > Clean...
注意:如果连R都无法识别,可能是因为你的activity不在主包中,需要导入R.java
。这不应该是你的情况,因为你在字段级别遇到了错误,而不是 R
。
但是,如果是这种情况,我会假设您的基本包是 com.example
。如果是这样,您应该在其他导入下方添加以下行,就在您的 Activity 类声明之前:
import com.example.R;
关于android - 为什么找不到ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23154863/