Цель. Находясь на странице с вкладками, у меня есть рамка и жест касания рамки, при выборе в пределах жеста касания рамки я бы хотел перейти на нужную страницу с вкладками, как если бы выбирал страницу с вкладками.
Я пробовал различные способы навигации, однако они либо будут иметь верхнюю кнопку «Назад», либо не будут отображать нижние вкладки, либо не будут обновлять навигацию по нижнему меню, либо позволят мне go перейти на главную страницу и выбрать первую вкладку.
У меня есть MainPage с 5 страницами с вкладками.
Пример настройки страниц с вкладками: (с помощью views: in 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. Однако не уверен, как правильно его реализовать.
С помощью приведенного выше кода он вернет меня обратно на MainPage, однако на первую загруженную вкладку. Мне нужно, чтобы это было на 4-й вкладке или OffersPage.
Любая помощь будет принята с благодарностью.