Android 为什么在设置片段时需要实现OnFragmentInteractionListener?

Android 为什么在设置片段时需要实现OnFragmentInteractionListener?,android,android-fragments,android-fragmentactivity,Android,Android Fragments,Android Fragmentactivity,我遵循了官方文档:。它提供了设置片段的步骤 首先,创建片段类(`extensedfragment') 然后创建它的布局(在fragment类“OnCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState)”中,使用inflate`返回此布局的一个视图) 选择将使用此片段的活动。此活动必须扩展FragmentActivity,为了使用片段,它将包含对FragmentManager方法、Fragm

我遵循了官方文档:。它提供了设置片段的步骤

  • 首先,创建片段类(`extensedfragment')

  • 然后创建它的布局(在fragment类“
    OnCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState)”
    中,使用inflate`返回此布局的一个
    视图)

  • 选择将使用此片段的活动。此活动必须
    扩展FragmentActivity
    ,为了使用片段,它将包含对
    FragmentManager
    方法、
    FragmentTransaction
    方法等的调用

  • 但是,这样做会导致“致命异常”:

    java.lang.lang.lang.RuntimeException:com.example。。。TheActivity@efebfcf必须实现OnFragmentInteractionListener

    问题
  • 为什么文档中没有提到这个问题

  • 在活动中(使用片段
    片段
    ),我实现了
    片段.OnFragmentInteractionListener
    (是的,
    片段.OnFr…
    )。这很奇怪,不是吗?此外,此侦听器提供以下方法:
    onFragmentInteraction(Uri)
    ,但它应该包含什么


  • 我很确定在片段的
    onAttach
    方法中,它会说父活动必须实现
    OnFragmentInteractionListener
    。这是为了促进片段到活动的通信

    这不是必需的,可以删除签入
    onAttach
    。事实上,如果您没有在
    onAttach
    方法中执行任何操作,那么可以从
    片段中删除整个方法