Ich denke, Sie sollten nicht alle Navigationsstapel auswendig lernen. Ihr Gerät entscheidet sich dafür, Ihre App zu beenden oder von der letzten Seite, die Sie gesehen haben, neu zu starten, wenn sie aus dem Hintergrund kommt. Ich denke, Sie können sich merken, ob Sie "eingeloggt" sind oder nicht: Wenn Sie "Angemeldet" sind, können Sie von der ersten Seite "nach dem Login" neu starten, ansonsten "vom Login" starten.
Für diesen Fall, dass Sie einen Blick auf this link und verwenden dann
Properties
public class App : Xamarin.Forms.Application
{
public App()
{
}
protected override void OnStart()
{
// Handle when your app starts
Debug.WriteLine ("OnStart");
checkLogin();
}
protected override void OnSleep()
{
// Handle when your app sleeps
Debug.WriteLine ("OnSleep");
}
protected override void OnResume()
{
// Handle when your app resumes
Debug.WriteLine ("OnResume");
checkLogin();
}
}
void checkLogin(){
if (Application.Current.Properties.ContainsKey("IsLogged"))
{
var IsLogged = Application.Current.Properties ["IsLogged"] as bool;
// do something with IsLogged
if(IsLogged)
MainPage = new MyFirstPage();
else
MainPage = new MyLoginPage();
}
else
MainPage = new MyLoginPage();
}
nehmen können, wenn Sie in
Application.Current.Properties ["IsLogged"] = true;
Ich werde klären angemeldet haben -, dass im Wesentlichen die Logik, die ich an die haben ist Minute. Wenn sie eingeloggt sind, bringe sie auf eine Seite und wenn nicht, bring sie auf eine andere Seite. Wenn der Benutzer jedoch in iOS das Kontrollzentrum aufruft, unterbricht er die App und wenn er das Kontrollzentrum verlässt, führt er die Logik "resume" aus, die ich nicht haben möchte. –