嵌套片段获取父片段的视图,因此我可以将控件锚定到它

时间:2016-09-20 00:53:46

标签: c# android android-fragments xamarin.android

我有一个主要活动,它为我的片段提供了一个viewpager。当在寻呼机中的片段上时,我有一个我用于选项/设置的子片段。我有两个问题:

  1. 如何从子片段中获取父片段的视图?换句话说,如果用户单击选项/设置,则会显示子片段。从子片段类,我试图显示一个ListPopupWindow,它需要我为.AnchorView指定一个视图。通常,当在片段或活动上时,这将是相应的视图,因为它通常表示全屏。但是,我的子片段只是一个小弹出窗口,类似于Windows中的“开始”菜单。如果您考虑该示例,当我单击菜单中的某个选项并想要显示ListPopupWindow时,它不会显示,因为我不想将其锚定到子片段的视图(或“开始”菜单),我想将它锚定到我的主/父片段,以便在主窗口显示我想要的位置。
  2. 这是我尝试过但得到空引用。

    var parentFragment = ChildFragmentManager.FindFragmentById(Resource.Id.my_parent_fragment);
    var parentView = parentFragment.View;
    

    然后,我做了:

    optionsPopupWindow.AnchorView = parentView;
    
    1. 使用上面解释的这个模型,在子片段和父片段之间发送数据的最佳方法是什么?理想情况下,我想简单地设置公共属性并在两者之间调用方法。这可以用父/子片段完成吗?我知道大多数事情都是通过活动和我读到的,这是首选方式。也就是说,我想知道在某些情况下,是否可以直接在片段之间进行。
    2. 谢谢!

0 个答案:

没有答案