W swoim drugim aktywności, można uzyskać dane z pierwszej aktywności metodą getIntent()
a następnie getStringExtra()
, getIntExtra()
...
następnie powrócić do swojej pierwszej działalności ty należy użyć metody setResult()
z danymi zamiaru, aby powrócić jako parametr.
Aby otrzymać powracające dane z drugiej aktywności podczas pierwszej aktywności, wystarczy przesłonić metodę onActivityResult()
i użyć intencji do pobrania danych.
Pierwszy aktywny:
//In the method that is called when click on "update"
Intent intent = ... //Create the intent to go in the second activity
intent.putExtra("oldValue", "valueYouWantToChange");
startActivityForResult(intent, someIntValue); //I always put 0 for someIntValue
//In your class
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//Retrieve data in the intent
String editTextValue = intent.getStringExtra("valueId");
}
Drugi aktywny:
//When activity is created
String value = intent.getStringExtra("oldValue");
//Then change the editText value
//After clicking on "save"
Intent intent = new Intent();
intent.putExtra("valueId", value); //value should be your string from the edittext
setResult(somePositiveInt, intent); //The data you want to send back
finish(); //That's when you onActivityResult() in the first activity will be called
Nie zapomnij, aby rozpocząć swoją drugą aktywność metodą startActivityForResult()
.
można przejść do preferencji lub umieścić dodatkową metodę, która jest podana poniżej. – itsrajesh4uguys
użyj startActivityForResult, aby wywołać inne działanie i uzyskać wynik onActivityResult –