Почему необходимо реализовать OnFragmentInteractionListener при настройке фрагмента? - PullRequest
0 голосов
/ 15 сентября 2018

Я следовал официальной документации: https://developer.android.com/guide/components/fragments#Creating. Здесь приведены шаги для настройки фрагмента.

  1. Сначала создайте класс фрагмента (`extends Fragment ')

  2. Затем создайте его макет (и в классе фрагментов OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) верните один из View' of this layout using inflate`)

  3. Выберите действие, которое будет использовать этот фрагмент.Это действие должно extends FragmentActivity, и для использования фрагмента оно будет содержать вызовы методов FragmentManager, методов FragmentTransaction и т. Д.

Однаковыполнение этого приводит к «фатальному исключению»:

java.lang.lang.lang.RuntimeException: com.example ... TheActivity @ efebfcf должна реализовывать OnFragmentInteractionListener

Вопросы

  1. Почему в документации не упоминается эта проблема?

  2. В TheActivity (где используется фрагмент TheFragment), Я реализовал TheFragment.OnFragmentInteractionListener (да, TheFragment.OnFr...!).Это странно, не правда ли?Кроме того, этот слушатель предоставляет этот метод: onFragmentInteraction(Uri uri) но что он должен содержать?

1 Ответ

0 голосов
/ 15 сентября 2018

Я уверен, что в методе фрагмента onAttach он скажет, что родительское действие должно реализовывать OnFragmentInteractionListener. Это должно облегчить связь Фрагмента с Деятельностью.

Это не требуется, и регистрация в onAttach может быть удалена. Фактически, если вы ничего не делаете в методе onAttach, тогда весь метод можно удалить из Fragment

...