2014-10-27 5 views
0

Я просто привык к Xamarin.Forms и не могу найти стандартный способ восстановления стека навигации после приостановки/восстановления (например, когда устройство вращается).Как восстановить стек навигации после приостановления/возобновления страницы в Xamarin.Forms

Я использую MVVM с материалом Xamarin.Forms.Labs, поэтому я могу получить IXFormsApp и получить триггеры для возобновления и т. Д., Но я не понимаю, как я должен восстановить стек навигации в своем приложении?

Например, если у меня есть HomeView и HomeViewModel, который имеет представление списка элементов. Кто-то нажимает элемент списка, и он переходит к моим элементам ItemView и ItemViewModel. Затем пользователь поворачивает экран - как мне восстановить их там, где они были?

Может ли кто-нибудь указать мне правильное направление?

Благодаря

Matt

ответ

0

Оказывается, что в настоящее время ответ на этот вопрос, как из Xamarin.Forms 1,2 (и, возможно, 1,3), чтобы добавить следующие изменения в вашей андроида деятельности.

Где ваш 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 будет обрабатывать некоторые изменения ориентации в своих собственных макетах.

Смежные вопросы