簡體   English   中英

Xamarin.Forms中頁面暫停/恢復后如何還原導航堆棧

[英]How to restore the navigation stack after page suspend / resume in Xamarin.Forms

我只是習慣了Xamarin.Forms,似乎無法找到掛起/還原(例如設備旋轉時)后還原導航堆棧的標准方法。

我將MVVM與Xamarin.Forms.Labs一起使用,因此我可以獲取IXFormsApp,並獲取Resumed等的觸發器,但是我不明白我打算如何在應用中恢復導航堆棧?

例如,如果我有HomeView和HomeViewModel,它們具有項目的列表視圖。 有人單擊列表視圖項,然后導航到我的ItemView和ItemViewModel。 然后用戶旋轉屏幕-如何將它們還原到原來的位置?

誰能指出我正確的方向?

謝謝

馬特

事實證明,從Xamarin.Forms 1.2(可能是1.3)開始,當前的解決方案是將以下更改添加到您的android活動中。

您的MainActivity看起來應該像這樣:

[Activity(Label = "SomeName", MainLauncher = true, Theme = "@android:style/Theme.Holo.Light")]
public class MainActivity : XFormsApplicationDroid
{
...
}

您需要告訴Android在屏幕尺寸或方向更改期間不要破壞和恢復您的活動:

[Activity(Label = "SomeName", MainLauncher = true, Theme = "@android:style/Theme.Holo.Light", ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
public class MainActivity : XFormsApplicationDroid
{
...
}

Xamarin.Forms將在其自己的布局中處理一定程度的方向更改。

暫無
暫無

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

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