我正在显示主要详细信息页面。
主页面具有菜单项列表,而详细信息页面将具有所选项的详细信息。
默认情况下,详细信息页面在屏幕左侧显示标题。 我要自定义详细信息页面标题以显示在页面中心。
是否可以在Xamarin表单中自定义详细信息页面标题栏?
答案 0 :(得分:1)
选项1 :
我认为您正在寻找TitleView(available since XF 3.2)。您所要做的就是创建一个想要拥有的View作为TitleView并将其分配给NavigationPage,如下所示:
代码
public class TitleViewPage : ContentPage
{
public TitleViewPage()
{
var titleView = new Slider { HeightRequest = 44, WidthRequest = 300 };
NavigationPage.SetTitleView(this, titleView);
...
}
}
XAML
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="NavigationPageTitleView.TitleViewPage">
<NavigationPage.TitleView>
<Slider HeightRequest="44" WidthRequest="300" />
</NavigationPage.TitleView>
...
</ContentPage>
选项2 :
回到过去,在TitleView可用之前,我曾经只是删除导航栏:
代码
NavigationPage.SetHasNavigationBar(this, false);
XAML
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
...
NavigationPage.HasNavigationBar="False">
然后,我只是在我的NavigationPage顶部放了一个StackLayout(我的自定义标题栏),上面有我想要的所有图标/按钮/图像/格式化的文本/等。