为什么找不到身份证?

时间:2014-04-18 13:09:46

标签: android xml

我是日食的新手,我刚开始写一些代码(实际上它只是从网站上复制和粘贴)。任何人都可以帮我解决这个问题吗?

错误出现在R.id.toggleButton1上,我添加了一行

android:id="@+id/toggleButton1"

在我的布局activity_main.xml中,但错误仍然存​​在:(

错误是:

  

toggleButton1无法解析或不是字段

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"
        >
        ...

3 个答案:

答案 0 :(得分:5)

问题: Eclipse告诉您toggleButton1未被识别为R.id的字段。这可能是因为R.java未正确生成。

解决方案:要强制eclipse重新生成R.java,请清理并重建项目。这可以通过Project > Clean...

在Eclipse中完成

注意:如果甚至无法识别R,可能是因为您的活动不在主程序包中,您需要导入R.java。这不应该是您的情况,因为您在字段级别上遇到了错误,而不是R

但是,如果是这样的话,我会假设你的基础包是com.example。如果是这样,您应该在活动类声明之前在其他导入下面添加以下行:

import com.example.R;

答案 1 :(得分:1)

无需导入R.java

在eclipse中转到Project-&gt;清理并再次运行您的应用程序。

答案 2 :(得分:1)

尝试
  ctrl + shift + o

在Eclipse中组织导入,清理构建应用程序,这应该有效

关于onClickListener(),它让我们告诉O.S单击该按钮时该怎么做。

onClick()
  

来自View.OnClickListener。当用户触摸时调用此方法   该项目(在触摸模式下),或关注项目与   导航键或轨迹球并按下合适的“输入”键或   按下轨迹球。

详细了解Input Events

这是一个有用的SO Link for onClickListener