如何解决将控件上方/上方添加到Shell App栏中,而不对其进行更改
我正在尝试在Label
应用栏(导航栏)上方添加一个可以作为任何控件的层(例如,让我们使用Shell
),以便在所有页面上都可用。为此,我尝试使用TitleView
,这显然不能满足我的要求(请参见下面的屏幕截图)。
尝试
Page1.xaml:
<ContentPage...>
...
<Shell.TitleView>
<StackLayout Spacing="0">
<Label Text="Hello world" VerticalOptions="Start" HorizontalOptions="Start"/>
<Label Text="{Binding Source={x:Reference page1},Path=Title}"/>
</StackLayout>
</Shell.TitleView>
</ContentPage>
AppShell.xaml:
<Shell...>
...
<FlyoutItem FlyoutdisplayOptions="AsMultipleItems">
<Tab Title="Tab1">
<ShellContent Title="Page1"
ContentTemplate="{DataTemplate local:Page1}"/>
<ShellContent Title="Page2"
ContentTemplate="{DataTemplate local:Page2}"/>
</Tab>
<Tab Title="Tab2">
<ShellContent Title="Page1"
ContentTemplate="{DataTemplate local:Page1}"/>
<ShellContent Title="Page2"
ContentTemplate="{DataTemplate local:Page2}"/>
</Tab>
</FlyoutItem>
</Shell>
所以我要实现的目标是2分:
- 如屏幕截图所示,
Label
应该位于整个应用程序栏(FlyoutIcon
+TitleView
)的上方,而不应该仅位于TitleView
的顶部。 / li> - 与此同时,
ContentPage.Title
的原始样式不应更改。
尝试
所需结果
奖金问题:
似乎Shell
应用栏由FlyoutIcon
和TitleView
两部分组成。 Xamarin.Forms如何/在何处构建Shell
布局?简要说明或指向XF Github repo中的相关类。
尝试使用一些Shell自定义渲染器失败。
编辑
编辑2
解决方案可能来自即将到来的功能Shell.AppBar。同时打开Android项目级别的解决方案。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。