Цель: находясь на странице с вкладками, у меня есть рамка и жест касания кадра, при выборе внутри жеста касания кадра я хотел бы, чтобы он перешел на нужную страницу с вкладками, как если бы выбрал страницу с вкладками.
Я пробовал различные методы навигации, однако у них либо будет верхняя кнопка возврата, либо не будут отображаться нижние вкладки, либо они не будут обновлять навигацию по нижнему меню, либо мне придется перейти на главную страницу и выбрать первую вкладку.
У меня есть MainPage с 5 страницами с вкладками.
Пример настройки моих страниц с вкладками: (с использованием представлений: в xaml для выбора страницы).
<NavigationPage Title="Offers">
<NavigationPage.Icon>
<OnPlatform x:TypeArguments="FileImageSource">
<On Platform="iOS" Value="tab_offers.png"/>
<On Platform="Android" Value="tab_offers.png"/>
</OnPlatform>
</NavigationPage.Icon>
<x:Arguments>
<views:OffersPage />
</x:Arguments>
</NavigationPage>
Код, используемый для получения жеста касания в кадре.
<Frame BackgroundColor="Green" HeightRequest="32" WidthRequest="112" Padding="0" CornerRadius="8" HasShadow="False">
<Frame.GestureRecognizers>
<TapGestureRecognizer Tapped="TapGestureRecognizer_OfferPage" /
</Frame.GestureRecognizers>
<Label Text="Earn Now" TextColor="White" FontSize="14" HorizontalOptions="Center" VerticalOptions="Center" FontAttributes="Bold"/>
</Frame>
В настоящее время я использую следующий метод навигации:
private async void TapGestureRecognizer_OfferPage(object sender, EventArgs e)
{
await Navigation.PushModalAsync(new NavigationPage(new MainPage()));
}
По сути, я считаю, что должен быть способ выбрать индекс страницы с вкладками или страницу с вкладками из MainPage. Однако не уверен, как это правильно реализовать.
С помощью приведенного выше кода он вернет меня на главную страницу, но на первую загруженную вкладку. Мне нужно, чтобы он был на 4-й вкладке или на OffersPage.
Любая помощь будет оценена.