firebase finish()に新しいです。私のサインアップ活動を停止しませんが、バックグラウンドで継続します。データを継続的にデータベースに保存し続けます。 私は何をすべきか分かりません。finish()はアクティビティを破棄していません
Signup.javaコードスニペット
final Button signup = (Button) findViewById(R.id.signup);
final EditText name, phno, password;
name = (EditText) findViewById(R.id.sign_up_name);
phno = (EditText) findViewById(R.id.sign_up_phno);
password = (EditText)findViewById(R.id.sign_up_pass);
final FirebaseDatabase database = FirebaseDatabase.getInstance();
final DatabaseReference table_user = database.getReference("User");
signup.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
final ProgressDialog mdialog= new ProgressDialog(Signup.this);
mdialog.setMessage("Please wait");
mdialog.show();
table_user.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot)
{
if(dataSnapshot.child(phno.getText().toString()).exists())
{
mdialog.dismiss();
Toast.makeText(Signup.this,"Phone No. Already Registered",Toast.LENGTH_SHORT).show();
}
else
{
mdialog.dismiss();
User user = new User(name.getText().toString(), password.getText().toString());
table_user.child(phno.getText().toString()).setValue(user);
Toast.makeText(Signup.this, "Sign Up Successful", Toast.LENGTH_SHORT).show();
finish();
は// mainActivity.javaにリダイレクトするが、データinsersionは、コードが完全に完全に閉じparanthesis
User.java
public class User {
private String Name;
private String Password;
public User(String y,String x) {
Name=y;
Password=x;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getPassword() {
return Password;
}
public void setPassword(String password) {
Password = password;
}
}
activity_signupが書き込まれ続け.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Name"
android:id="@+id/sign_up_name"/>
<EditText
android:id="@+id/sign_up_phno"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/sign_up_name"
android:hint="Phone No."/>
<EditText
android:id="@+id/sign_up_pass"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/sign_up_phno"
android:hint="password"/>
<Button
android:layout_below="@id/sign_up_pass"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/signup"
android:text="Sign up"/>
</RelativeLayout>
これを解決する方法はありますか。直接アンドロイドでの活動を終了あなたはカントので、あなたがそれを破壊する前にそれを伝える必要があり
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
:仕上げ()
あなたのコードで申し込みが成功した場合、あなたは主なアクティビティに誘導されていません。 –
アクティビティを終了する前にfirebaseからremoveListenerを削除する必要があります。 – ADM
あなたが挿入している、またはそうでないコードをデバッグしましたか? –