Xamarin选项卡以外的选项卡式页面内容

时间:2019-11-17 18:36:15

标签: c# xaml xamarin

快速提问

在Xamarin Forms中,当使用“选项卡式页面”时,在选项卡之间(选项卡栏本身除外)是否有任何内容保持静态?

例如,如果我有一个有3个孩子的TabbedPage(例如Page1Page2Page3),我可以将其他孩子添加到TabbedPage中吗不是标签本身的一部分,而是其他地方,并停留在标签之间?

我的用途是在页面底部的TabbedPage中有3个标签。我想要每个页面右上角的设置按钮,而不必在每个页面中多次创建相同的内容,而这些内容是TabbedPage的子代。

<TabbedPage xlmns="...>
    [Content Here that remains between all tabs, but not a part of the tabbar itself]
    <local:Page1>
    <local:Page2>
    <local:Page3>
</TabbedPage>

是否有一些简便的方法?还是有其他方法? 感谢您的帮助。

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

  

我希望在每个页面的右上角有一个设置按钮,而不必在每个页面中多次创建相同的内容(作为TabbedPage的子代)。

一种简单的方法是使用自定义控件作为模型。添加自定义控件后,该按钮将显示在每个选项卡式页面(page1,page2,page3)中。如果要在按钮上进行更多更改,请更改自定义模型,所有更改将显示在页面中。

自定义控件:ButtonModel

<Button x:Name="btnModel" Text="Button" HorizontalOptions="EndAndExpand" Margin="4,0,8,0"></Button>

将此添加到Page1,Page2,Page3

<local:ButtonModel ></local:ButtonModel>

enter image description here

答案 2 :(得分:0)

有几种解决方法。其中一个在另一条评论中很好地概述了,但是我发现Xamarin Forms的“ Pure”选项卡更适合我的需求。     https://www.sharpnado.com/pure-xamarin-forms-tabs/ 一旦我了解了它并很好地处理了与mvvm的集成,它就相对直观了。选项卡需要点头跨越整个页面(选项卡栏除外),这正是我想要的。