Xamarin Forms - с вкладки на другой экран и обратно на вкладку - PullRequest
0 голосов
/ 25 марта 2020

У меня есть приложение Xamarin Forms, основанное на структуре страниц с вкладками. Когда я захожу на одну из страниц с вкладками, я скрываю навигацию для этой страницы, поэтому я не вижу двух переходов (я скрываю навигацию этой страницы, а не навигацию страницы, на которой находятся все вкладки).

На каждой странице с вкладками есть кнопка, когда я нажимаю на эту кнопку, я перехожу на другой экран. На этом экране, если я нажму кнопку «Назад», я не go вернусь на предыдущую страницу (страницу с вкладками), но я go вернусь на страницу, которая открывает страницу, на которой находятся все вкладки.

Чего я хочу добиться: от страницы с вкладками до другого экрана и обратно к странице с вкладками.

// Шаг 1: открыть главную страницу

     MainPage = new NavigationPage(new MainPage());

// Шаг 2: мы создаем главная страница сведений, страница планирования по умолчанию

 <MasterDetailPage.Master>
    <local:MasterPage x:Name="masterPage" />
</MasterDetailPage.Master>

<MasterDetailPage.Detail>
    <NavigationPage>
        <x:Arguments>
            <local:PlanningPage/>
        </x:Arguments>
    </NavigationPage>
</MasterDetailPage.Detail>

// Шаг 3: на странице планирования есть кнопка, при нажатии на которую мы открываем

     await Navigation.PushAsync(new PlanningDetailPage());

// Шаг 4: страница сведений является вкладкой с несколькими вкладками в ней

    <TabbedPage.Children>

    <NavigationPage Title="Activity">
        <x:Arguments>
            <views:ActivityPage />
        </x:Arguments>
    </NavigationPage>

    <NavigationPage Title="Vehicle">
        <x:Arguments>
            <views:VehiclePage />
        </x:Arguments>
    </NavigationPage>


</TabbedPage.Children>

// Шаг 5: Мы открываем вкладку транспортного средства, у нее есть кнопка, при нажатии на кнопку мы переходим к VehicleEditPage

            await Navigation.PushAsync(new VehicleEditPage());

Когда я нахожусь на странице транспортного средства, как я могу вернуться на страницу транспортного средства? Поскольку каждая страница с вкладками скрывает свою собственную навигацию, отображается только навигация на странице сведений (странице, на которой находятся все вкладки), и она используется для go возврата на главную страницу.

...