繁体   English   中英

为什么按钮说是无效的按钮类型?

[英]Why does the button say as an invalid button type?

我正在创建一个带有 firebase 的社交媒体应用程序来存储数据。当应用程序构建时,会显示非法 java 异常显示:- 查看 ID 为 2131165271 的字段“mButton”的“按钮”类型错误。 有关更多信息,请参阅 ca use。 package com.example.whatareyouthinking;

import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle; import android.view.View; import android.widget.EditText; import android.widget.Toast;

import com.google.android.gms.tasks.OnCompleteListener; import com.google.android.gms.tasks.Task; import com.google.firebase.auth.AuthResult; import com.google.firebase.auth.FirebaseAuth; import com.google.firebase.firestore.CollectionReference; import com.google.firebase.firestore.FirebaseFirestore;

import java.util.HashMap; import java.util.Map;

import butterknife.BindView; import butterknife.ButterKnife;

public class MainActivity extends AppCompatActivity {

@BindView(R.id.name)EditText mNameEt;
@BindView(R.id.email)EditText mEmailEt;
@BindView(R.id.password)EditText mPasswordEt;
@BindView(R.id.button)EditText mButton;
private String name,email,password;
private FirebaseAuth mAuth;

private CollectionReference mRef;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ButterKnife.bind(this);
    mAuth=FirebaseAuth.getInstance();
    mRef= FirebaseFirestore.getInstance().collection("Users");

    mButton.setOnClickListener(v -> checkDataAndLogin());
}
private void checkDataAndLogin(){
    name=mNameEt.getText().toString();
    email=mEmailEt.getText().toString().trim();
    password=mPasswordEt.getText().toString().trim();

    if(name.isEmpty()||email.isEmpty()||password.length()<6){
        Toast.makeText(getApplicationContext(),"Invalid Credentials",Toast.LENGTH_SHORT).show();
    }
    else{
        mAuth.createUserWithEmailAndPassword(email,password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
            @Override
            public void onComplete(@NonNull Task<AuthResult> task) {
                if (!task.isSuccessful()){
                    Toast.makeText(getApplicationContext(),task.getException().getLocalizedMessage(),Toast.LENGTH_LONG).show();
                }
                else {
                    saveUserData();
            }
            }

        });

    }
}
private void saveUserData(){
    Map<String,String> map =new HashMap<>();
    map.put("name",name);
    map.put("email",email);
    map.put("password",password);
    map.put("id",mAuth.getUid());
    mRef.document(mAuth.getUid()).set(map).addOnCompleteListener(new OnCompleteListener<Void>() {
        @Override
        public void onComplete(@NonNull Task<Void> task) {
            if(!task.isSuccessful()){
                Toast.makeText(getApplicationContext(),task.getException().getLocalizedMessage(),Toast.LENGTH_SHORT).show();
            }else{
                Toast.makeText(getApplicationContext(),"SignUp Successful",Toast.LENGTH_SHORT).show();
            }
        }
    });

} }

这是我的 Mainactivity 代码 mbutton 有什么问题有人可以帮忙吗?

这里:

@BindView(R.id.button)EditText mButton;

应该:

@BindView(R.id.button)Button mButton;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM