e ho un problema che ho voluto fare questo inviando tipo di dati in un pulsante Soft che avevo fatto e il softkey che è il default in ogni dispositivo Android, quindi ho fatto questo, prima ho fatto un Intent
mio "A" Activity
:
Intent intent = new Intent();
intent.setClass(context, _AddNewEmployee.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivityForResult(intent, 6969);
setResult(60);
Quindi nella mia seconda attività, ho dichiarato un campo nella mia "B" Activity
:
private static int resultCode = 40;
poi dopo che ho fatto la mia richiesta con successo o ogni volta che volevo dire all'attività "A" che questo lavoro è stato fatto con successo qui cambia il valore di resultCode con lo stesso che ho detto in "A" Activity
che nel mio caso è "60" e poi:
private void backToSearchActivityAndRequest() {
Intent data = new Intent();
data.putExtra("PhoneNumber", employeePhoneNumber);
setResult(resultCode, data);
finish();
}
@Override
public void onBackPressed() {
backToSearchActivityAndRequest();
}
PS: ricorda di rimuovere il Super
metodo onBackPressed se vuoi che funzioni correttamente.
quindi dovrei chiamare il onActivityResult
metodo anche nella mia attività "A":
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 6969 && resultCode == 60) {
if (data != null) {
user_mobile = data.getStringExtra("PhoneNumber");
numberTextField.setText(user_mobile);
getEmployeeByNumber();
}
}
}
questo è tutto, spero che ti aiuti. #HappyCoding;
startActivityForResult