コード例 #1
0
        /// <summary>
        /// Shows guide view controllers, e.g., Game Center view controllers.
        /// In iOS 5 and older, the guide is presented using GuideViewController.
        /// In iOS 6+, the guide is presented using the root view controller.
        /// (The iOS 5 method generates runtime warnings.)
        /// </summary>
        /// <param name="viewController">The view controller to be shown, e.g., Game Center view controllers</param>
        private static void ShowViewController(UIViewController viewController)
        {
            if (_window != null && viewController != null)
            {
                prevGestures = TouchPanel.EnabledGestures;
                TouchPanel.EnabledGestures = GestureType.None;

                if (osVersion < 6.0d)
                {
                    // Show view controller the old way for iOS 5 and older
                    if (guideViewController == null)
                    {
                        guideViewController = new GuideViewController(_gameViewController);
                        _window.Add(guideViewController.View);
                        guideViewController.View.Hidden = true;
                    }

#pragma warning disable 618
                    // Disable PresentModalViewController warning, still need to support iOS 5 and older
                    guideViewController.PresentModalViewController(viewController, true);
#pragma warning restore 618
                }
                else
                {
                    // Show view controller the new way for iOS 6+
                    _window.RootViewController.PresentViewController(viewController, true, delegate {});
                }

                IsVisible = true;
            }
        }
コード例 #2
0
ファイル: Guide.cs プロジェクト: DL-Kazutaka/Xamarin-MonoGame
        public static void ShowLeaderboard()
        {
            AssertInitialised();

            if ((Gamer.SignedInGamers.Count > 0) && (Gamer.SignedInGamers[0].IsSignedInToLive))
            {
                // Lazy load it
                if (leaderboardController == null)
                {
                    leaderboardController = new GKLeaderboardViewController();
                }

                if (leaderboardController != null)
                {
                    leaderboardController.DidFinish += delegate(object sender, EventArgs e)
                    {
                        leaderboardController.DismissModalViewControllerAnimated(true);
                        IsVisible = false;
                        TouchPanel.EnabledGestures = prevGestures;
                    };

                    if (_window != null)
                    {
                        if (viewController == null)
                        {
                            viewController = new GuideViewController(_gameViewController);
                            _window.Add(viewController.View);
                            viewController.View.Hidden = true;
                        }

                        prevGestures = TouchPanel.EnabledGestures;
                        TouchPanel.EnabledGestures = GestureType.None;
                        viewController.PresentModalViewController(leaderboardController, true);
                        IsVisible = true;
                    }
                }
            }
            else
            {
                UIAlertView alert = new UIAlertView("Error", "You need to be logged into Game Center to view the Leaderboard.", null, "Ok");
                alert.Show();
                ShowSignIn(1, true);
            }
        }