如何在 Xamarin Forms Shell 的选项卡栏中设置默认选中的选项卡?
根据Xamarin Forms文档,第一个Shell Content将成为屏幕上的默认内容。然而,我想将“搜索”页面设置为默认选项卡,而不是“已保存”的选项卡。
我尝试设置标签索引 - 无效。我还尝试在Shell的onAppearing方法中调用路由,但似乎Shell的onAppearing方法从未触发。
我也试图导航到Search页面:
<?xml version="1.0" encoding="UTF-8"?>
<Shell xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="TestApp.NavigationShell"
xmlns:pages="clr-namespace:TestApp.Pages"
xmlns:pageModels="clr-namespace:TestApp.PageModels">
<TabBar Route="testapp">
<Tab Title="Saved" Icon="tabDashboard" Route="dashboard"><ShellContent ContentTemplate="{DataTemplate pages:DashBoardPage}"/></Tab>
<Tab Title="Calendar" Icon="tabCalendar" Route="calendar"><ShellContent ContentTemplate="{DataTemplate pages:CalendarPage}"/></Tab>
<Tab Title="Search" Icon="tabSearch" Route="search"><ShellContent ContentTemplate="{DataTemplate pages:SearchPage}"/></Tab>
<Tab Title="Support" Icon="tabSupport" Route="support"><ShellContent ContentTemplate="{DataTemplate pages:SupportPage}"/></Tab>
<Tab Title="Profile" Icon="tabAccount" Route="account"><ShellContent ContentTemplate="{DataTemplate pages:AccountPage}"/></Tab>
</TabBar>
根据Xamarin Forms文档,第一个Shell Content将成为屏幕上的默认内容。然而,我想将“搜索”页面设置为默认选项卡,而不是“已保存”的选项卡。
我尝试设置标签索引 - 无效。我还尝试在Shell的onAppearing方法中调用路由,但似乎Shell的onAppearing方法从未触发。
我也试图导航到Search页面:
public partial class NavigationShell : Shell
{
public NavigationShell()
{
InitializeComponent();
//Shell.Current.TabIndex = 2;
}
protected override async void OnAppearing()
{
base.OnAppearing();
//await Shell.Current.GoToAsync("testapp/search");
}
}
当应用程序打开时需要设置默认选项卡,最好的解决方案是什么?
谢谢。