我需要帮助解决一个问题。这可能是一个简单的问题,但我不知道该怎么办!
我的错误:
错误:MainActivity不是抽象的,不会覆盖OnClickListener中的抽象方法onClick(View)
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
Button btRegister;
ImageView circle1;
TextView tvLogin;
Button login;
EditText mEmail,mPassword;
FirebaseAuth fAuth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btRegister = findViewById(R.id.btRegister);
tvLogin = findViewById(R.id.tvLogin);
circle1 = findViewById(R.id.circle1);
login = findViewById(R.id.btLogin);
mEmail = findViewById(R.id.etUsername);
mPassword = findViewById(R.id.etPassword);
// if(fAuth.getCurrentUser() != null){
// startActivity(new Intent(getApplicationContext(),Startseite.class));
// finish();
// }
// btRegister.setOnClickListener(this);
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String email = mEmail.getText().toString().trim();
String password = mPassword.getText().toString().trim();
if (TextUtils.isEmpty(email)) {
mEmail.setError("Benutzername is Required.");
return;
}
if (TextUtils.isEmpty(password)) {
mPassword.setError("Password is Required.");
return;
}
// authenticate the user
fAuth.signInWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
Toast.makeText(MainActivity.this, "Logged in Successfully", Toast.LENGTH_SHORT).show();
startActivity(new Intent(getApplicationContext(), MainActivity.class));
} else {
Toast.makeText(MainActivity.this, "Error ! " + task.getException().getMessage(), Toast.LENGTH_SHORT).show();
}
}
});
}
});
}
}
您的MainActivity
类不必要地实现了View. OnClickListener
接口。删除实现View.OnClickListener
,它就可以工作了。
当您实现View. OnClickListener接口时,您需要在活动中实现onClick方法。您可以删除此实现,因为您在代码中为登录按钮分配了onClickListener。
您可以为您的活动实现View. OnClickListener,在您的活动中实现onClick方法,将每个View的每个onClickListener设置为this
,并使用id开关捕获Activity的onClick方法中的所有Event。这是我做的事情,当我在一个活动中获得一些onClick方法时,将所有onClick方法放在一个地方