制作选项卡式应用程序时,是否创建新的导航页面或内容页面?

时间:2018-07-14 04:36:16

标签: xamarin xamarin.forms

我想创建带有标签的应用程序。我不需要导航页面的功能,该功能允许我返回上一个屏幕。我只希望标签栏允许我选择五个页面之一。

这是我到目前为止的代码:

public partial class MainPage : TabbedPage
{

    public MainPage()
    {
        InitializeComponent();

我的问题是我应该使用以下哪个。请注意,HomePage继承自ContentPage。

        // this is the one the app uses now. Do I really need to NavigationPage and then inside that another page HomePage?
        var homePage = new NavigationPage(new HomePage())
        {
            Title = "Home",
            Icon = "ionicons_2_0_1_home_outline_25.png"
        };

        // I thought this would be better but ContentPage constructor cannot take an argument
        var homePage = new ContentPage(new HomePage())
        {
            Title = "Home",
            Icon = "ionicons_2_0_1_home_outline_25.png"
        };

        // this is my latest thought but would like to hear from others
        var homePage = new HomePage()
        {
            Title = "Home",
            Icon = "ionicons_2_0_1_home_outline_25.png"
        };

 Children.Add(homePage);

1 个答案:

答案 0 :(得分:3)

  

建议在TabbedPage中填充   仅NavigationPageContentPage实例。这将有助于确保   在所有平台上都具有一致的用户体验。

以上引用来自官方TabbedPage documentation

  1. 如果不需要,ContentPage不需要用NavigationPage包装。
  2. 如果HomePage是从ContentPage继承的,那么您可以创建它的一个实例并以以下方式添加到子级:

var homePage = new HomePage
{
    Title = "Home",
    Icon = "ionicons_2_0_1_home_outline_25.png"
};
Children.Add(homePage);

P.S。:Official documentation很好地介绍了导航主题。请熟悉它。