如何解决如何在 Xamarin 表单的所有屏幕中显示 TabbedPage?
我正在使用 TabbedPage 在 Xamarin 表单中显示底部选项卡。为此,我以编程方式将子页面(Page1、Page2、Page3)添加到 TabbedPage。首先我有登录屏幕,点击登录按钮它会重定向到标签页,并会在底部显示所有三个标签。
还有其他页面(Page4、Page5)我们没有在标签页中显示为子页面。但根据用户打开 page4 或 page5 时的要求,底部标签栏应显示。
总的来说,我的意思是底部标签栏应该显示给应用程序中的所有屏幕,即使某些屏幕不是 TabbedPage 的子屏幕。
谁能告诉我如何完成这项任务。提前致谢。
解决方法
您可以将 TabbedPage 的子项包装在 NavigationPages 中,这样当您从这些选项卡之一导航到另一个页面时,它们仍会显示:
<?xml version="1.0" encoding="UTF-8" ?>
<TabbedPage
x:Class="SampleTabbedPage.Views.MainPage"
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:views="clr-namespace:SampleTabbedPage.Views;assembly=SampleTabbedPage"
NavigationPage.HasNavigationBar="False">
<!-- Page 1 -->
<NavigationPage IconImageSource="ic_home">
<x:Arguments>
<views:HomePage />
</x:Arguments>
</NavigationPage>
<!-- Page 2 -->
<NavigationPage IconImageSource="ic_profile">
<x:Arguments>
<views:ProfilePage />
</x:Arguments>
</NavigationPage>
</TabbedPage>
在代码后面:
var tabbedPage = new TabbedPage();
tabbedPage.Children.Add(new NavigationPage(new Page1()));
tabbedPage.Children.Add(new NavigationPage(new Page2()));
tabbedPage.Children.Add(new NavigationPage(new Page3()));
然后你可以从其中一个子页面调用:
await Navigation.PushAsync(new YourNewPage());
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。