public Task <bool> NavigateAsync(string key, IDictionary <string, string> parameters = null)
        {
            switch (key)
            {
            case "default":
            {
                var page = new EmbeddingPage
                {
                    BindingContext = new EmbeddingPageViewModel(this)
                };
                var fragment = page.CreateSupportFragment(this);

                var tx = SupportFragmentManager.BeginTransaction();
                tx.Replace(Resource.Id.pageContainer, fragment);
                tx.Commit();
            }
                return(Task.FromResult(true));

            case "end_of_walkthrough":
            {
                var fragment = new SessionsFragment();
                var tx       = SupportFragmentManager.BeginTransaction();
                tx.Replace(Resource.Id.pageContainer, fragment);
                tx.CommitNow();

                toolbar.Visibility = Android.Views.ViewStates.Visible;
                UpdatePageTitle();
            }
                return(Task.FromResult(true));

            case "view_session_details":
            {
                var item = new SessionDetailModel
                {
                    Title       = parameters[nameof(SessionDetailModel.Title)],
                    Description = parameters[nameof(SessionDetailModel.Description)],
                    ImageUrl    = parameters[nameof(SessionDetailModel.ImageUrl)]
                };
                var detailPage = new SessionsDetailsPage
                {
                    BindingContext = new SessionDetailsViewModel(item)
                };
                var detailFragment = detailPage.CreateSupportFragment(this);

                var tx = SupportFragmentManager.BeginTransaction();
                tx.Add(Resource.Id.pageContainer, detailFragment, key);
                tx.CommitNow();

                SupportActionBar.SetDisplayHomeAsUpEnabled(true);
                UpdatePageTitle();
            }

                return(Task.FromResult(true));
            }

            return(Task.FromResult(false));
        }
Exemple #2
0
        public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
        {
            PreserveCustomControls();
            Xamarin.Forms.Forms.Init();

            // Override point for customization after application launch.
            // If not required for your application you can safely delete this method
            Window = new UIWindow(UIScreen.MainScreen.Bounds);

            var walkthroughPage = new EmbeddingPage
            {
                BindingContext = new EmbeddingPageViewModel(this)
            };
            var walkthroughController = walkthroughPage.CreateViewController();
            var root = new UINavigationController(walkthroughController);

            walkthroughController.NavigationController.NavigationBarHidden = true;

            Window.RootViewController = root;

            Window.MakeKeyAndVisible();

            return(true);
        }