实际参数Login无法通过方法调用转换转换为OnClickListener

时间:2015-08-29 07:16:59

标签: android

当我尝试在Android工作室中编译我的应用程序时遇到此错误。错误信息是这样的:

Error:(32, 15) error: method setOnClickListener in class View cannot be applied to given types;
required: OnClickListener
found: Login
reason: actual argument Login cannot be converted to OnClickListener by method invocation conversion

这是我的代码:

package tryoutonly.com.contactform;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Button;
import android.widget.EditText;
import android.view.View;
import android.widget.TextView;
import android.view.View.OnClickListener;


public class Login extends AppCompatActivity {

    Button bLogin;
    EditText etemail, etPassword;
    TextView jvRegisterLink;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);

        etemail = (EditText) findViewById(R.id.etemail);
        etPassword = (EditText) findViewById(R.id.etPassword);
        bLogin = (Button) findViewById(R.id.bLogin);
        jvRegisterLink = (TextView) findViewById(R.id.jvRegisterLink);


        bLogin.setOnClickListener(this);
        jvRegisterLink.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch(v.getId()){
            case R.id.bLogin:
                break;

            case R.id.jvRegisterLink:
                startActivity(new Intent(this, Register.class));
                break;
        }

    }
}

显然错误显示在下面的代码中

bLogin.setOnClickListener(this);

谁能告诉我问题出在哪里?

1 个答案:

答案 0 :(得分:2)

好吧,错误是自我解释的,你的类没有实现OnClickListener接口。

更改班级声明
public class Login extends AppCompatActivity

public class Login extends AppCompatActivity implements OnClickListener