Можно ли установить Arguments () на onActivityResult () и передать его FragmentActivity?
Из моей SecondActivity я передаю пакет в FirstActivity через onBackPressed ().
@Override
public void onBackPressed() {
Bundle bundle = new Bundle();
bundle.putString("SORT_VALUE", SORT_BY_VALUE);
bundle.putString("SORT_BY", sortby);
bundle.putString("FROM_SORT", "FROM_SORT");
Intent intent = new Intent();
intent.putExtras(bundle);
setResult(RESULT_OK, intent);
back();
super.onBackPressed();
}
У меня есть этот код onActivityResult ().
if (requestCode == SORT_RESULT) {
if (data != null && data.getExtras() != null) {
Bundle bundle = data.getExtras();
SORT_VALUE = bundle.getString("SORT_VALUE");
sortby = bundle.getString("SORT_BY");
FILTER_VALUE = bundle.getString("FILTER_VALUE");
filterby = bundle.getString("FILTER_BY");
final ProductListFragment frg = new ProductListFragment();;
Bundle extra = new Bundle();
extra.putString("SORT_VALUE", SORT_VALUE);
extra.putString("SORT_BY", sortby);
frg.setArguments(extra);
if (SORT_VALUE != null) {
if (SORT_VALUE.equalsIgnoreCase("Popularity")) {
setSortValueAndSortBy("Popularity", "fmcg-campaign.status=active,-monthly-popular-score");
}
//this contains code for other options
}
Это мой код для FragmentActivity, он вызывает метод onCreate (), но значения возвращают null на моем конце.
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle args = getArguments();
SORT_VALUE = args.getString("SORT_VALUE");
SORT_BY = args.getString("SORT_BY");
}