У меня есть действие с двумя фрагментами (SearchInput, SearchResult), в каждом из которых есть кнопка, которая перемещается к другому фрагменту (search, search_again). Концепция заключается в том, чтобы сначала загрузить SearchInput, а после нажатия кнопки поиска загрузить фрагмент SearchResult, а затем после нажатия кнопки поиска. снова go назад к первому фрагменту!
Проблема в том, что я хочу сохранить все введенные пользователем данные при первом нажатии кнопки поиска!
Здесь я нахожу способ сделать то, что работает правильно ! но я хочу знать , является ли это хорошим решением или нет !
, так как фрагмент снова входит в CreateView, мой коллега сказал мне, что это не лучший способ!
Вот как сохранить первый фрагмент (этот код onCreateView первого фрагмента)
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
if (isReturnFromResult && fragmentView != null) {
Helper.logDebug(TAG,"inside fragmentView != null");
return fragmentView;
} else {
View view = inflater.inflate(R.layout.frg_search_input, container, false);
initViews(view);
setLoading();
if (activity.getIntent().getExtras() != null) {
type = activity.getIntent().getExtras().getInt(INTENT_KEY_TYPE);
adapterPositionCategory = activity.getIntent().getExtras().getInt(INTENT_KEY_SELECTED_CATEGORY_POSITION);
}
setType(type);
setPriceSeekbar();
setRvDuration();
Helper.adjustResize((AppCompatActivity) context, scrollView);
fragmentView = view;
Helper.logDebug(TAG,"inside fragmentView == null");
return view;
}
}
![here is screenshots of two fragments](https://i.stack.imgur.com/StQ3k.jpg)