使用"工具栏"进行主/细节导航详细视图

时间:2016-10-24 15:42:53

标签: android ios xaml layout xamarin.forms

使用Xamarin Forms,我想做一个像这样的布局。基本上它是MasterDetailPage。但我想要一个"工具栏"在所有详细信息页面上保存和共享。

My layout

与往常一样,Master在左侧充当侧边栏,在右侧显示详细信息。主人有按钮切换详细信息页面。

现在,困难的部分:我还希望有一个应该出现在详情视图顶部(或底部)的另一个栏,以便从中导航,因为它将拥有最多用户想要导航到的常用部分(无需使用侧栏)。

如何获得此布局?

1 个答案:

答案 0 :(得分:0)

是的,可以这样做(顺便说一句,避免是/否问题):

您要做的是将两个片段(侧边栏和底栏)和一个片段占位符设为FrameLayout(加载详细信息内容)。然后,您将FragmentTransactions用于" replace"占位符片段基于在侧栏上选择的内容,就像在普通的mater / list-details用例中一样。

假设我点击了"联系人"侧栏,我可以有这样的代码:

      ...
      case CONTACT_SELECT : 
       ContactsFragment contactFragment = new ContactFragment(<some-params-if-needed>);
       FragmentTransaction ft = get<Support>FragmentManager().beginTransaction();
       ft.replace(R.id.id_of_your_placeholder_framelayout, contactFragment);
       ft.commit();
    break;

    case SOMETHING_ELSE : ...

除非我错过了一些关于您的用例的特殊内容,否则我认为上述提案应该为您提供良好的服务。

我希望这会有所帮助。

官方指南也可能有所帮助:Building a Dynamic UI with Fragments