错误:MainActivity不是抽象的,并且不会覆盖OnClickListener中的抽象方法onClick(View)

问题描述 投票:0回答:2

我需要解决问题。这可能很简单,但是我不知道该怎么办!我的错误:

错误: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();

                        }

                    }
                });

            }
        });
    }



}

java android android-studio
2个回答
0
投票

您的MainActivity类不必要地实现了View.OnClickListener接口。删除implements View.OnClickListener,它将起作用。


0
投票

实现View.OnClickListener接口时,您需要在活动中实现onClick方法。您可以在代码中为登录按钮分配onClickListener时删除此实现。

您可以为您的活动实现View.OnClickListener,在活动内部实现onClick方法,将每个视图的每个onClickListener设置为this,并使用id的开关来捕获Activity的onClick方法中的所有Event。当我在一个活动中获得一些onClick方法以将所有onClick方法都放在一个地方时,我就是这样做的。

© www.soinside.com 2019 - 2024. All rights reserved.