Я пытаюсь создать функцию поиска, которая будет вызывать фрагмент, имеющий несколько похожее имя, чем то, что ищется. Кто-нибудь делал это? - PullRequest
0 голосов
/ 19 февраля 2020

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

Я думаю об использовании функции Activity.getsupportfragmentmanager().findfragmentbyID, но тогда фрагмент должен был бы быть запущен внутри действия, которое далеко от того, что мне нужно.

Может кто-нибудь здесь, пожалуйста, укажите мне в правильном направлении?

1 Ответ

0 голосов
/ 19 февраля 2020

Activity.getSupportFragmentManager (). FindFragmentByID находит текущий фрагмент, содержащийся в макете xml с этим идентификатором

Если вы выполните FragmentManager.beginTransaction().replace(R.id.whatever,fragment1).commit()

, а затем выполните Activity.getSupportFragmentManager().findFragmentByID(R.id.whatever)

он найдет fragment1

, а затем сразу после того, как вы выполните

FragmentManager.beginTransaction().replace(R.id.whatever,fragment2).commit()
Activity.getSupportFragmentManager().findFragmentByID(R.id.whatever)

, он найдет fragment2

Если каждый фрагмент имеет свой собственный идентификатор, этот метод будет работать.

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