【发布时间】:2021-01-16 11:27:06
【问题描述】:
我有一个问题。我创建了以下 TabbedPage:
<?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:d="http://xamarin.com/schemas/2014/forms/design"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:views="clr-namespace:MyApp.Views"
mc:Ignorable="d"
x:Class="MyApp.Views.MainPage"
xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core"
android:TabbedPage.ToolbarPlacement="Bottom"
BarBackgroundColor="White"
BarTextColor="Black"
android:TabbedPage.BarItemColor="#B2B2B2"
android:TabbedPage.BarSelectedItemColor="#56D7A5"
android:TabbedPage.IsSwipePagingEnabled="False">
<TabbedPage.Children>
<NavigationPage Title="page1" IconImageSource="navbar_page1">
<x:Arguments>
<views:page1 NavigationPage.HasNavigationBar="False" />
</x:Arguments>
</NavigationPage>
<NavigationPage Title="page2" IconImageSource="navbar_page2">
<x:Arguments>
<views:page2 NavigationPage.HasNavigationBar="False" />
</x:Arguments>
</NavigationPage>
<NavigationPage Title="page3" IconImageSource="navbar_page3">
<x:Arguments>
<views:page3 NavigationPage.HasNavigationBar="False" />
</x:Arguments>
</NavigationPage>
</TabbedPage>
现在我在每个页面上都添加了这样的自定义 FabMenu:
<c:FloatingMenu Margin="0, 0, 10, 10" BGColor="#56D7A5" OpenIcon="openFab_icon" CloseIcon="closeFab_icon"
AbsoluteLayout.LayoutBounds=".95,.95" AbsoluteLayout.LayoutFlags="PositionProportional">
<c:FloatingButton x:Name="btnAddHomework" BGColor="#59E1FF" IconSrc="add_homework_icon" OnClickCommand="{Binding btnAddHomeworkCommand}" />
<c:FloatingButton x:Name="btnAddDeadline" BGColor="#0FF1A0" IconSrc="add_deadline_icon"/>
<c:FloatingButton x:Name="btnAddTest" BGColor="#5988FF" IconSrc="add_test_icon"/>
</c:FloatingMenu>
问题是每个页面都有自己的 FabMenu,所以您会看到它在每个页面上消失并重新出现,所以我的问题是:是否有某种根视图覆盖了 TabbedPage 中的所有选项卡?
请告诉我我是怎么做到的!
【问题讨论】:
-
我只想说这些回复中的大多数都不是真的。使用自定义渲染器将按钮添加到选项卡页面是可能的(尽管您可以说并不容易)。参考这个问题:link
-
我的意思是当你切换标签时不会消失的按钮,所以是标签的覆盖。该链接适用于 gabbar 内的图像,但这不是我的意思
-
我认为在你的情况下 ToolBarItem 是一个很好的解决方法
-
这当然是可能的。我建议使用 FloatingMenu 的静态实例。 @LucasZhang-MSFT - 作为一名微软员工,我强烈建议您避免说某事是“不可能的”,除非您 100% 确定这是不可能的。更好的回应是“我不知道如何实现这一点”或根本没有回应。我们都是 Microsoft 的代表,我们给其他开发人员的建议很重要,并且会被视为真理。
-
标签页只是一个 ContentPage 的容器,您需要在每个 ContentPage 上添加浮动按钮。
标签: xaml xamarin xamarin.forms xamarin.android xamarin.ios