получить доступ к нескольким фрагментам из одной кнопки с плавающей точкой - PullRequest
0 голосов
/ 20 мая 2018

Я просмотрел несколько статей, но не смог найти то, что мне нужно.Мне нужно реализовать одну кнопку с плавающей точкой для доступа к различным фрагментам.Может кто-нибудь помочь в этом?

это моя кнопка с плавающей точкой в ​​MainActivity

 FloatingActionButton fab = findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            Fragment currentFragment = getSupportFragmentManager().findFragmentById(R.id.viewPager);
            String tag = currentFragment.getTag();

            Intent intent = new Intent(MainActivity.this, EditorActivity.class);
            startActivity(intent);
        }
    });

InventoryFragment

RecipeFragement

Ответы [ 2 ]

0 голосов
/ 20 мая 2018

Внутри вашего onClick метода

Fragment currentFragment = getSupportFragmentManager().findFragmentById(R.id.viewPager);
            String tag = currentFragment.getTag();
        switch (tag) {
            case Inventory:
               Intent intent = new Intent(MainActivity.this, EditorActivity.class);
            startActivity(intent); 
                break;
            case Recipe:
                //what do you want to do
                break;
        }

Другой способ был бы

0 голосов
/ 20 мая 2018

Самый простой способ сделать это - иметь ссылки на все фрагменты, к которым вы хотите получить доступ, в классе, к которому написан этот код (MainActivity), вне слушателя FloatingActionButton.

Или, поскольку фрагменты могутсодержать другие фрагменты, сделать основной фрагмент, содержащий все остальные, и просто сослаться на это

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