簡體   English   中英

xamarin.forms中的導航如何工作?

[英]How Does Navigation in xamarin.forms Works?

當我在Android應用程序中使用xamarin.forms時,我必須從一頁導航到另一頁。 我的問題是,如果從一頁導航到另一頁,則將其添加到導航堆棧中。 例如,如果我的應用具有第1頁->第2頁->第3頁->第4頁->第1頁這樣的導航(行為類似於循環),當我第二次導航至該頁面時,它將替換第1頁 嗎?將其添加到堆棧中。 誰能以簡單的方式解釋導航?

編輯

我的意思是替換,如果從一頁導航到另一頁將其添加到堆棧中,如果導航像循環一樣繼續並繼續將其添加到堆棧中,將不會影響應用程序的性能?

注意:我不想返回上一頁,只是想從一個頁面連續導航到另一個頁面。

提前致謝

您能否再詳細說明這個問題? “替換”是什么意思?

它是一個堆棧,所以沒有:不會“替換”第一頁的“ 1”,而是放置“副本”。

例:

想象一下帶有綁定數據對象的列表視圖。 單擊某個項目時,您會轉到一個項目詳細信息頁面。 想象一下詳細信息頁面上有上一個和下一個按鈕導航到其他項目,然后按一個。 堆棧將如下所示:ListViewPage-> ItemsPage-> ItemsPage。

您所說的是CarouselPage

CarouselPage帶了幾個ContentPage子級,並允許您向側面輕掃以切換頁面。

public class App
{
    public static Page GetMainPage ()
    {  
        var carousel = new CarouselPage ();
        carousel.Children.Add (new ContentPage () {
            Title="One",
            Content = new BoxView {
                WidthRequest = 90,
                HeightRequest = 100,
                BackgroundColor = Color.Blue
            }
        });
        carousel.Children.Add (new ContentPage () {  
            Title="TWO",
            Content = new BoxView {
                WidthRequest = 90,
                HeightRequest = 100,
                BackgroundColor = Color.Red
            }
        }); 
        return carousel;
    }
}

或者,您可以在要顯示的每個頁面上放置兩個按鈕(或合適的UI元素),然后使用Navigation.PushModalAsync()導航到上一頁/下一頁

PushModalAsync之前使用this.Navigation.PopModalAsync()對我有用

this.Navigation.PopModalAsync ();

現在我的應用程序運行順利:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM