loginActivity後,我的應用程序繼續執行setupActivity,在其中用戶需要輸入他的名字,並且有一個提交按鈕將名稱上傳到firebase,然後應該繼續進行mainActivity,並且這應該只對用戶發生一次。 問題是mSubmitbtn將名稱存儲到數據庫,但不會繼續執行mainActivity,並且setupActivity會再次彈出。如何在setupActivity之後進行mainActivity?
public class SetupActivity extends AppCompatActivity {
private EditText mNameField;
private Button mSubmitBtn;
private DatabaseReference mDatabaseUsers;
private FirebaseAuth mAuth;
private ProgressDialog mProgress;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_setup);
mNameField = (EditText) findViewById(R.id.setupNameField);
mSubmitBtn = (Button) findViewById(R.id.setupSubmitBtn);
mProgress = new ProgressDialog(this);
mDatabaseUsers = FirebaseDatabase.getInstance().getReference().child("Users");
mAuth = FirebaseAuth.getInstance();
mSubmitBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startSetupAccount();
}
});
}
private void startSetupAccount() {
final String user_id = mAuth.getCurrentUser().getUid();
final String name = mNameField.getText().toString().trim();
if (!TextUtils.isEmpty(name)) {
mProgress.setMessage("Finishing setup.");
mProgress.show();
mDatabaseUsers.child(user_id).child("name").setValue(name);
mProgress.dismiss();
Intent mainIntent = new Intent(SetupActivity.this, MainActivity.class);
mainIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(mainIntent);
}
}
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
也許,覆蓋的onPause(或onresult或的onStop由你)功能,以從那裏開始呼叫的主要活動。 – koksalb
@koksalb對不起,我是新來的Android教程製作應用程序,你可以幫助一些代碼示例? –