【问题标题】:Xamarin Forms: How to set title for tabbedpage?Xamarin Forms:如何设置标签页的标题?
【发布时间】:2018-03-16 17:07:16
【问题描述】:

我用 3 个标签实现 TabbedPage,如下图所示。

在这 3 个选项卡之上,我正在尝试设置一个标题,这对于所有 3 个选项卡都是通用的。尝试了标签页的标题属性,但没有奏效。

MyTabbedpage.xaml

<?xml version="1.0" encoding="utf-8" ?>
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
            xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
            xmlns:local="clr-namespace:Myapp;assembly=Myapp"
            BarBackgroundColor="#1C7DB4"
            BarTextColor="White"
            x:Class="Myapp.MyTabbedPage">
</TabbedPage>

MyTabbedpage.xaml.cs

using Xamarin.Forms;
using Xamarin.Forms.Xaml;

namespace Myapp
{
    [XamlCompilation(XamlCompilationOptions.Compile)]
    public partial class MyTabbedPage : TabbedPage
    {
        public MyTabbedPage(bool value)
        {
            InitializeComponent();

            Children.Add(new Topics());
            Children.Add(new Group());
            Children.Add(new Menu());
        }

        protected override bool OnBackButtonPressed()
        {
            return false;
        }
    }
}

请提出解决方案。

【问题讨论】:

标签: xamarin.forms tabs


【解决方案1】:

我认为如果没有自定义渲染器,您将无法做到这一点。

您可以试试这个预构建的表单控件 - TabView - 位于: https://github.com/gruan01/XFControls

您也可以在 NuGet 上找到它。 您可以将图像设置到选项卡和其他增强功能。

但我强烈推荐使用自定义渲染器作为最终解决方案。

【讨论】:

  • 您能否为此提供一个示例自定义渲染器代码?我不从事自定义渲染。
  • 您会在此处找到一些自定义渲染器示例,您可以构建自己的代码来适应它们:从内容页面开始...与您想要的相似:github.com/xamarin/xamarin-forms-samples/tree/master/…
【解决方案2】:
public class MainPageCS : TabbedPage
{
  public MainPageCS ()
  {
    var navigationPage = new NavigationPage (new SchedulePageCS ());
    navigationPage.Icon = "schedule.png";
    navigationPage.Title = "Schedule";

    Children.Add (new TodayPageCS ());
    Children.Add (navigationPage);
  }
}

这是来自official documentation 的代码 sn-p。在第 7 行,您可以看到标题是如何设置的。

编辑问题后,您似乎想用NavigationPage 包装TabbedPage 并为NavigationPage 设置Title。示例:

new NavigationPage(new MyTabbedPage()) { Title = "Common Title" }; 

或者,您的TabbedPage 孩子之一也可以是NavigationPage,这取决于您的需要。

【讨论】:

  • 此代码仅在我的问题图片中创建主题或组之类的标题。我正在尝试为所有 3 个选项卡设置一个通用标题。
  • 什么是“通用标题”?
  • "编辑问题后,您似乎想用 NavigationPage 包装 TabbedPage 并为 NavigationPage 设置标题"---对不起,我没有明白这一点。
  • 能否提供样品?
猜你喜欢
  • 2014-09-07
  • 2016-11-21
  • 1970-01-01
  • 2017-06-05
  • 1970-01-01
  • 1970-01-01
  • 2014-10-09
  • 1970-01-01
  • 2020-10-23
相关资源
最近更新 更多