当我单击注册按钮时,我设法创建了帐户并进行身份验证,然后重定向到登录页面,之后创建了一个新活动(rdv_detail),其中包含一个微调程序,用于恢复输入的名称的值。问题是当我创建一个新帐户时,通常我单击注册,我必须重定向到登录页面,但我重定向到页面(rdv_detail),微调器设法恢复了在编辑文本字段开头输入的值,但是当我由同一用户重新连接,微调框为空,我希望微调框以表格的开头保留所有值(名称),有谁可以帮助我,因为我不知道确切的错误所在,但我没有想要的结果(account.java-> login.java->单击按钮-> rdv_detail.java(包含微调器)
account.java
public class account extends AppCompatActivity {
private EditText nameDoctor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_account);
registerButton = findViewById(R.id.btt_register);
nameDoctor = findViewById(R.id.name_doc);
}
//code
private void registerDoctor() {
String name = nameDoctor.getText().toString();
//code
final Doctor doctor = new Doctor(name, city, adress, email, tel, speciality, code);
mAuth.createUserWithEmailAndPassword(doctor.email, password).addOnCompleteListener(new
OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (!task.isComplete()) {
Toast.makeText(account.this, "Error ...: " +
task.getException().getMessage(), Toast.LENGTH_LONG).show();
Log.e("doctor", "Error....: " +
task.getException().getMessage());
} else {
Log.e("Adddoctor", "user account created");
new Thread(new Runnable() {
@Override
public void run() {
SaveDoctorData(doctor);
Intent sendNameIntent = new Intent(account.this, rdv_detail.class);
String name=nameDoctor.getText().toString();
sendNameIntent.putExtra("nameDoctor",name);
startActivity(sendNameIntent);
}
}).start();
}
}
});
}
private void SaveDoctorData(Doctor doctor){
db.collection("doctor").add(doctor).addOnCompleteListener(new
OnCompleteListener<DocumentReference>() {
@Override
public void onComplete(@NonNull Task<DocumentReference> task) {
if (!task.isComplete()) {
Toast.makeText(Compte.this, "Error ...: " +
task.getException().getMessage(), Toast.LENGTH_LONG).show();
Log.e("doctor", "Error: " +
task.getException().getMessage());
}else{
Toast.makeText(account.this, " user account created",
Toast.LENGTH_LONG).show();
redirectToLoginPage();
}
}
});
}
private void redirectToLoginPage() {
Intent intent = new Intent(this, login.class);
startActivity(intent);
}
public void cancel(View view) {
redirectToLoginPage();
}
}
rdv_detail.java
//code
public class rdv_detail extends AppCompatActivity implements
DatePickerDialog.OnDateSetListener,TimePickerDialog.OnTimeSetListener,View.OnClickListener{
//code
Spinner spinner_doc;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_rdv_detail);
spinner_doc =findViewById(R.id.spinner_doctor);
String nameExtra = getIntent().getStringExtra("nameDoctor");
if(nameExtra !=null)
{
ArrayList<String> spinnerData = new ArrayList<String>();
spinnerData.add(nameExtra);
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(rdv_detail.this,
android.R.layout.simple_spinner_item, spinnerData);
spinner_doc.setAdapter(arrayAdapter);
}
}
}