setOnClickListener上的错误

时间:2013-01-25 01:20:10

标签: java android android-layout android-widget onclicklistener

我一直在btn.setOnClickListener(this)上收到此错误。我有与以前相同的代码但是我几乎没有得到这个错误,直到几分钟前我打开了我的日食。很快就会帮助你,谢谢你。

package com.example.bmisummative;

import android.app.Activity;
import android.content.DialogInterface;
import android.view.View.OnClickListener;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class weightloss extends Activity {
    Button btn;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.weightloss);
        btn = (Button) findViewById(R.id.homeButton);
        btn.setOnClickListener(this);
    }

        public void onClick(View v) {
        if (v.getId() == R.id.homeButton) {
            startActivity(new Intent(this, MainActivity.class));
        }

    }
}

4 个答案:

答案 0 :(得分:2)

您没有实施OnClickListener。您需要执行此操作才能将onClickListener设置为:

 btn.setOnClickListener(this);

你需要这样做:

public class weightloss extends Activity implements OnClickListener {...}

答案 1 :(得分:2)

您应该实施OnClickListener

public class weightloss extends Activity
implements OnClickListener
{
   @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.weightloss);
      btn = (Button) findViewById(R.id.homeButton);
      btn.setOnClickListener(this);
   }

   public void onClick (View v)
   {
      // Button tap detected! Do stuffs!
   }

}

答案 2 :(得分:1)

您缺少implements OnClickListener

public class weightloss extends Activity implements OnClickListener {}

在不添加implements OnClickListener的情况下,还有另一种干净的方法:

btn = (Button) findViewById(R.id.homeButton);
btn.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
           startActivity(new Intent(this, MainActivity.class));

     }
});

我更喜欢后者,因为在处理大量按钮时更容易阅读。

答案 3 :(得分:-1)

写一下

public class weightloss extends Activity implements OnclickListner