Как перейти от действия B к указанному c фрагменту упражнения A? - PullRequest
0 голосов
/ 04 мая 2020
  1. У меня есть Activity A, который содержит 4 Fragments в ViewPager с BottomNavigationView.
  2. С 4-го Fragment я перехожу на Activity B.
  3. В Activity B есть один Button при нажатии должен перейти к Fragment B из Activity A.

Как подойти? Следует отметить один момент, я не хочу, чтобы Activity A был воссоздан, так как на Activity A

делается много вызовов API. PS Я видел ответы на подобные вопросы, но ни один из них не применим, как и я не работает с навигацией.

Ответы [ 2 ]

1 голос
/ 04 мая 2020

Я бы предложил начать Activity с Intent, в намерении добавить что-то вроде

intent.putExtra(KEY_FRAGMENT, "YourFragmentName")

и другие Activity:

  val fragmentName = intent.getStringExtra(KEY_FRAGMENT)
        if (fragmentName == "YourFragmentName") {
            // show fragment here
        }

1 голос
/ 04 мая 2020

Вы можете попробовать с помощью startActivityForResult()

1-й щелчок от фрагмента к действиюB

 Intent intent = new Intent(getActivity(), ActivityB.class);
 startActivityForResult(intent, 102);

Нажатие кнопки от действия B к фрагменту

Intent backIntent = new Intent();
        backIntent.putExtra("data","test");
        setResult(RESULT_OK,backIntent);
        finish();

Затем добавьте onActivityResult () Раздел фрагмента

 @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        if (data != null) {
            if (requestCode == 102) {
                if (resultCode == RESULT_OK) {

                    if(!TextUtils.isEmpty(data.getStringExtra("data")))
                    {
                        //
                    }


                }
            }
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...