当我尝试在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);
谁能告诉我问题出在哪里?
答案 0 :(得分:2)
好吧,错误是自我解释的,你的类没有实现OnClickListener接口。
从
更改班级声明public class Login extends AppCompatActivity
到
public class Login extends AppCompatActivity implements OnClickListener