火力地堡用户registeration
问题描述:
我在Android应用的开发相当新,我试图让从那里用户可以注册到数据库中的活动,这是代码火力地堡用户registeration
public class RegisterActivity extends AppCompatActivity {
TextInputLayout mEmail, mPassword;
Button mRegisterButton;
FirebaseAuth mAuth;
Button loginAccountButton;
ProgressDialog progressDialogue;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
mPassword = (TextInputLayout) findViewById(R.id.password);
mEmail = (TextInputLayout) findViewById(R.id.email);
loginAccountButton = (Button) findViewById(R.id.loginalready);
mRegisterButton = (Button) findViewById(R.id.registerButton);
progressDialogue = new ProgressDialog(RegisterActivity.this);
mAuth = FirebaseAuth.getInstance();
loginAccountButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(RegisterActivity.this,login.class));
}
});
mRegisterButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
registeruser();
}
private void registeruser() {
String email = mEmail.getEditText().getText().toString().trim();
String password = mPassword.getEditText().getText().toString().trim();
progressDialogue.setMessage("Please wait");
progressDialogue.show();
mAuth.createUserWithEmailAndPassword(email,password)
.addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if(task.isSuccessful()){
progressDialogue.dismiss();
Toast.makeText(RegisterActivity.this,"You're now registered",Toast.LENGTH_LONG).show();
startActivity(new Intent(RegisterActivity.this,MainActivity.class));
finish();
}
else{
Toast.makeText(RegisterActivity.this,"Something went horribly wrong",Toast.LENGTH_LONG).show();
}
}
});
}
});
}}
所有的类都正确导入和似乎是没有办法解决它,代码是工作了几个小时前,但现在它只是不会让步每次我试图和运行它给我的代码吐司出事了可怕的错误
this is the activity_register.xml
<android.support.design.widget.TextInputLayout
android:layout_width="368dp"
android:layout_height="wrap_content"
android:id="@+id/email"
android:layout_marginRight="8dp"
app:layout_constraintRight_toRightOf="parent"
android:layout_marginLeft="8dp"
app:layout_constraintLeft_toLeftOf="parent"
tools:layout_editor_absoluteY="8dp">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="EMAIL" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:layout_width="368dp"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@+id/email"
android:id="@+id/password"
android:layout_marginLeft="8dp"
app:layout_constraintLeft_toLeftOf="parent"
android:layout_marginRight="8dp"
app:layout_constraintRight_toRightOf="parent">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="PASSWORD" />
</android.support.design.widget.TextInputLayout>
<Button
android:id="@+id/registerButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:text="REGISTER"
app:layout_constraintTop_toBottomOf="@+id/password"
tools:layout_editor_absoluteX="280dp" />
<Button
android:id="@+id/loginalready"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="0dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:text="login"
android:textSize="14sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
tools:text="login?"
android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@+id/password"
app:layout_constraintVertical_bias="0.051" />
答
给android:id=""
你EditText
,而不是TextInputLayout
如下
<android.support.design.widget.TextInputLayout
android:layout_width="368dp"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@+id/displayName"
android:layout_marginRight="8dp"
app:layout_constraintRight_toRightOf="parent"
android:layout_marginLeft="8dp"
app:layout_constraintLeft_toLeftOf="parent">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/email"
android:hint="EMAIL" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:layout_width="368dp"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@+id/email"
android:layout_marginLeft="8dp"
app:layout_constraintLeft_toLeftOf="parent"
android:layout_marginRight="8dp"
app:layout_constraintRight_toRightOf="parent">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/password"
android:hint="PASSWORD" />
</android.support.design.widget.TextInputLayout>
在你的Java文件创建一个对象EdiText
代替TextInputLayout
并获得值如下。
EdiText mEmail, mPassword;
mPassword = (EdiText) findViewById(R.id.password);
mEmail = (EdiText) findViewById(R.id.email);
值由用户在EditText
没有TextInputLayout
所以你必须从EditText上
我希望它为你工作得值进入!谢谢
+0
谢谢你的工作@SaurabhBhandari – Sahil
你可以粘贴你的日志?可能有助于确定 – ashish
吐司任务。错误 –
检查您的互联网连接 –