2016-08-02 11 views
0

Ich erstelle eine App mit Xamarin Forms. Ich habe eine MainTab-Seite, die alle 4 Registerkarten anzeigt. Es gibt einen bestimmten Tab namens "Me".Inhalt basierend auf der Situation anzeigen (Xamarin.Forms)

Ab sofort zeigt die Me-Registerkarte das Benutzerprofil an. Wenn der Benutzer jedoch nicht angemeldet ist, sollte stattdessen meine UserLogin-Seite angezeigt werden. Wie mache ich das in Xamarin-Formularen?

+0

Bitte recherchieren Sie und [suchen Sie es selbst] (https://forums.xamarin.com/discussion/48634/from-login-page-to-main-page) bevor Sie auf [so] fragen. Auch am besten nicht zu erwähnen, Sie brauchen dringend eine Lösung ... http://meta.stackoverflow.com/questions/326569/under-what-circumstances-may-i-add-urgent-or-other-similar-phrases- to-my-quest –

Antwort

0

Sie können dies auf verschiedene Arten erreichen. Wenn Sie einen MVVM-Ansatz verwenden, besteht die einfachste Lösung darin, in Ihrem Ansichtsmodell eine Bindung festzulegen, die die Benutzerprotokollierung angibt. Auf dieser Grundlage können Sie Ihre TabbedPage.CurrentPage = TheTabPageYouWant festlegen. Wenn Sie Codebehind verwenden, verwenden Sie einfach in Ihrem;

public bool UserLogged 
{ 
get { return _userLogged; } 
set 
{ 
_userLogged = value; 
if (_userLogged) 
{ 
tabbedPage.CurrentPage = UserProfilePage.  
return; 
} 
tabbedPage.CurrentPage = LogInPage. 
} 

Ich empfehle dringend alle Xamarin.Forms Buch und MVVM-Techniken für Sie. Zögern Sie nicht, weitere Fragen zu stellen.

+0

Was ist, wenn die UserLogin-Seite nicht Teil der Tabs ist? Es muss nur als Popup-Seite angezeigt werden, wenn eine Schaltfläche geklickt wird? @TolgaKartal – shnz

+0

Dann ist die Lösung das gleiche :) anstelle von tabbedPage.CurrentPage verwenden Sie einfach Application.Current.MainPage = new LoginPage(); –

+0

Wow Vielen Dank! :) @TolgaKartal – shnz

Verwandte Themen