Ejemplo n.º 1
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            SendTweetButton.TouchUpInside += (object sender, EventArgs e) => {
                if (SLComposeViewController.IsAvailable(SLServiceKind.Twitter))
                {
                    slComposerViewController = SLComposeViewController.FromService(SLServiceKind.Twitter);

                    slComposerViewController.SetInitialText(TweetTextView.Text);

                    slComposerViewController.CompletionHandler += (result) => {
                        InvokeOnMainThread(() => {
                            DismissViewController(true, null);

                            UIAlertView messageBox = new UIAlertView("Ray's Hot Dogs", "Tweet sent successfully", null, "OK", null);

                            messageBox.Show();
                        });
                    };

                    PresentViewController(slComposerViewController, true, null);
                }
                else
                {
                    UIAlertView messageBox = new UIAlertView("Ray's Hot Dogs", "Twitter not configured on your device", null, "OK", null);
                    messageBox.Show();
                }
            };
        }
        public void postImageOnFacebook(UIImage image)
        {
            if (SLComposeViewController.IsAvailable(SLServiceKind.Facebook))
            {
                SLComposeViewController composerVC = SLComposeViewController.FromService(SLServiceKind.Facebook);
                composerVC.SetInitialText("Wikitude Snapshot");
                composerVC.AddImage(image);

                _presentingVC.PresentViewController(composerVC, true, null);

                composerVC.CompletionHandler += (result) => {
                    InvokeOnMainThread(() => {
                        NSString resultString = new NSString("");
                        switch (result)
                        {
                        case SLComposeViewControllerResult.Cancelled:
                            resultString = new NSString("Failed to post on Facebook");
                            break;

                        case SLComposeViewControllerResult.Done:
                            resultString = new NSString("Successfully posted on Facebook");
                            break;

                        default:
                            break;
                        }

                        UIAlertView alert = new UIAlertView("Screen shot", resultString, null, "OK", null);
                        alert.Show();
                    });
                };
            }
        }
Ejemplo n.º 3
0
        public void SendTweet(string msg)
        {
            if (SLComposeViewController.IsAvailable(SLServiceKind.Twitter))
            {
                var window          = UIApplication.SharedApplication.KeyWindow;
                UIViewController vc = window.RootViewController;

                slComposer = SLComposeViewController.FromService(SLServiceKind.Twitter);
                slComposer.SetInitialText(msg);
                slComposer.CompletionHandler += (result) =>
                {
                    Device.BeginInvokeOnMainThread(() =>
                    {
                        vc.DismissModalViewController(true);
                    });
                };
                vc.PresentViewController(slComposer, true, null);
            }
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();

            twitterButton.TouchUpInside += delegate {

                if (SLComposeViewController.IsAvailable (SLServiceKind.Twitter)) {

                    slComposer = SLComposeViewController.FromService (SLServiceType.Twitter);

                    slComposer.SetInitialText ("test");
                    slComposer.AddImage (UIImage.FromFile ("monkey.png"));

                    slComposer.CompletionHandler += (result) => {
                        InvokeOnMainThread (() => {
                            DismissViewController (true, null);
                            resultsTextView.Text = result.ToString ();
                        });
                    };

                    PresentViewController (slComposer, true, null);
                } else {
                    resultsTextView.Text = "Twitter Account not added";
                }
            };

            facebookButton.TouchUpInside += delegate {

                if (SLComposeViewController.IsAvailable (SLServiceKind.Facebook)) {

                    slComposer = SLComposeViewController.FromService (SLServiceType.Facebook);

                    slComposer.SetInitialText ("test2");
                    slComposer.AddImage (UIImage.FromFile ("monkey.png"));
                    slComposer.AddUrl (new NSUrl ("http://xamarin.com"));

                    slComposer.CompletionHandler += (result) => {
                        InvokeOnMainThread (() => {
                            DismissViewController (true, null);
                            resultsTextView.Text = result.ToString ();
                        });
                    };

                    PresentViewController (slComposer, true, null);
                } else {
                    resultsTextView.Text = "Facebook Account not added";
                }
            };

            twitterRequestButton.TouchUpInside += delegate {

                if (SLComposeViewController.IsAvailable (SLServiceKind.Twitter)) {

                    var parameters = new NSDictionary ();
                    var request = SLRequest.Create (SLServiceKind.Twitter,
                                                    SLRequestMethod.Get,
                                                    new NSUrl ("http://api.twitter.com/1/statuses/public_timeline.json"),
                                                    parameters);

                    request.PerformRequest ((data, response, error) => {

                        if (response.StatusCode == 200) {
                            InvokeOnMainThread (() => {
                                resultsTextView.Text = data.ToString (); });

                        } else {
                            InvokeOnMainThread (() => {
                                resultsTextView.Text = "Error: " + response.StatusCode.ToString (); });
                        }
                    });
                } else {
                    resultsTextView.Text = "Twitter Account not added";
                }
            };

            facebookRequestButton.TouchUpInside += delegate {

                if (SLComposeViewController.IsAvailable (SLServiceKind.Facebook)) {

                    var parameters = new NSDictionary ();
                    var request = SLRequest.Create (SLServiceKind.Facebook,
                                                    SLRequestMethod.Get,
                                                    new NSUrl ("https://graph.facebook.com/283148898401104"),
                                                    parameters);

                    request.PerformRequest ((data, response, error) => {

                        if (response.StatusCode == 200) {
                            InvokeOnMainThread (() => {
                                resultsTextView.Text = data.ToString (); });

                        } else {
                            InvokeOnMainThread (() => {
                                resultsTextView.Text = "Error: " + response.StatusCode.ToString (); });
                        }
                    });
                } else {
                    resultsTextView.Text = "Facebook Account not added";
                }

            };
        }
Ejemplo n.º 5
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            BackButton.TouchUpInside += delegate {
                this.NavigationController.PopViewControllerAnimated(true);
            };

            DetailsShowSocialNetworkViewBtn.TouchUpInside += delegate {
                DetailsNavReminderBtn.Transform        = Utilities.Hide;
                DetailsSocialNetworkCloseBtn.Transform = Utilities.Hide;
                TweetBtn.Transform = Utilities.Hide;
                PostBtn.Transform  = Utilities.Hide;
                DetailsNavReminderBtn.Transform = Utilities.Hide;
                UIView.AnimateNotify(0.4, 0, 0.65f, 0.0f, UIViewAnimationOptions.CurveEaseIn, delegate {
                    DetailsShowSocialNetworkViewBtn.Transform = Utilities.Hide;
                    DetailsNavTitleLbl.Transform = Utilities.Hide;
                    DetailsShowSocialNetworkViewBtn.Transform = Utilities.Hide;
                    BackButton.Transform = Utilities.Hide;

                    DetailsSocialNetworkCloseBtn.Hidden = false;
                    TweetBtn.Hidden = false;
                    PostBtn.Hidden  = false;
                    if (Convert.ToDateTime(_item.release_date) > DateTime.Now)
                    {
                        DetailsNavReminderBtn.Hidden    = false;
                        DetailsNavReminderBtn.Transform = Utilities.Show;
                    }
                    DetailsSocialNetworkCloseBtn.Transform = Utilities.Show;
                    TweetBtn.Transform = Utilities.Show;
                    PostBtn.Transform  = Utilities.Show;
                }, null);
            };

            DetailsSocialNetworkCloseBtn.TouchUpInside += delegate {
                UIView.AnimateNotify(0.4, 0, 0.65f, 0.0f, UIViewAnimationOptions.CurveEaseIn, delegate {
                    DetailsShowSocialNetworkViewBtn.Transform = Utilities.Show;
                    DetailsNavTitleLbl.Transform = Utilities.Show;
                    DetailsShowSocialNetworkViewBtn.Transform = Utilities.Show;
                    BackButton.Transform = Utilities.Show;
                    if (Convert.ToDateTime(_item.release_date) > DateTime.Now)
                    {
                        DetailsNavReminderBtn.Transform = Utilities.Hide;
                    }
                    DetailsSocialNetworkCloseBtn.Transform = Utilities.Hide;
                    TweetBtn.Transform = Utilities.Hide;
                    PostBtn.Transform  = Utilities.Hide;
                }, delegate { DetailsNavReminderBtn.Hidden = true; });
            };

            TweetBtn.TouchUpInside += delegate {
                slComposer = SLComposeViewController.FromService(SLServiceType.Twitter);

                if (!String.IsNullOrEmpty(game.hashtag))
                {
                    slComposer.SetInitialText("#" + game.hashtag);
                }

                slComposer.CompletionHandler += (result) => {
                    slComposer.DismissViewController(true, null);
                };
                PresentViewController(slComposer, true, null);
            };

            PostBtn.TouchUpInside += delegate {
                slComposer = SLComposeViewController.FromService(SLServiceType.Facebook);
                if (!String.IsNullOrEmpty(game.title))
                {
                    slComposer.SetInitialText(game.title);
                }

                slComposer.CompletionHandler += (result) => {
                    slComposer.DismissViewController(true, null);
                };
                PresentViewController(slComposer, true, null);
            };
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            twitterButton.TouchUpInside += delegate {
                if (SLComposeViewController.IsAvailable(SLServiceKind.Twitter))
                {
                    slComposer = SLComposeViewController.FromService(SLServiceType.Twitter);

                    slComposer.SetInitialText("test");
                    slComposer.AddImage(UIImage.FromFile("monkey.png"));

                    slComposer.CompletionHandler += (result) => {
                        InvokeOnMainThread(() => {
                            DismissViewController(true, null);
                            resultsTextView.Text = result.ToString();
                        });
                    };

                    PresentViewController(slComposer, true, null);
                }
                else
                {
                    resultsTextView.Text = "Twitter Account not added";
                }
            };

            facebookButton.TouchUpInside += delegate {
                if (SLComposeViewController.IsAvailable(SLServiceKind.Facebook))
                {
                    slComposer = SLComposeViewController.FromService(SLServiceType.Facebook);

                    slComposer.SetInitialText("test2");
                    slComposer.AddImage(UIImage.FromFile("monkey.png"));
                    slComposer.AddUrl(new NSUrl("http://xamarin.com"));

                    slComposer.CompletionHandler += (result) => {
                        InvokeOnMainThread(() => {
                            DismissViewController(true, null);
                            resultsTextView.Text = result.ToString();
                        });
                    };

                    PresentViewController(slComposer, true, null);
                }
                else
                {
                    resultsTextView.Text = "Facebook Account not added";
                }
            };

            twitterRequestButton.TouchUpInside += delegate {
                if (SLComposeViewController.IsAvailable(SLServiceKind.Twitter))
                {
                    var parameters = new NSDictionary();
                    var request    = SLRequest.Create(SLServiceKind.Twitter,
                                                      SLRequestMethod.Get,
                                                      new NSUrl("http://api.twitter.com/1/statuses/public_timeline.json"),
                                                      parameters);

                    request.PerformRequest((data, response, error) => {
                        if (response.StatusCode == 200)
                        {
                            InvokeOnMainThread(() => {
                                resultsTextView.Text = data.ToString();
                            });
                        }
                        else
                        {
                            InvokeOnMainThread(() => {
                                resultsTextView.Text = "Error: " + response.StatusCode.ToString();
                            });
                        }
                    });
                }
                else
                {
                    resultsTextView.Text = "Twitter Account not added";
                }
            };

            facebookRequestButton.TouchUpInside += delegate {
                if (SLComposeViewController.IsAvailable(SLServiceKind.Facebook))
                {
                    var parameters = new NSDictionary();
                    var request    = SLRequest.Create(SLServiceKind.Facebook,
                                                      SLRequestMethod.Get,
                                                      new NSUrl("https://graph.facebook.com/283148898401104"),
                                                      parameters);

                    request.PerformRequest((data, response, error) => {
                        if (response.StatusCode == 200)
                        {
                            InvokeOnMainThread(() => {
                                resultsTextView.Text = data.ToString();
                            });
                        }
                        else
                        {
                            InvokeOnMainThread(() => {
                                resultsTextView.Text = "Error: " + response.StatusCode.ToString();
                            });
                        }
                    });
                }
                else
                {
                    resultsTextView.Text = "Facebook Account not added";
                }
            };
        }
Ejemplo n.º 7
0
        void ComposeSocialMessage()
        {
            string socialMessage     = string.Empty;
            string currentBestTime   = userDefaults.StringForKey(PREVIOUS_BEST_TIME_KEY);
            string connectedServices = (String.IsNullOrWhiteSpace(userDefaults.StringForKey(SOCIAL_NETWORKS_CONNECTED)) == true ?
                                        string.Empty : userDefaults.StringForKey(SOCIAL_NETWORKS_CONNECTED));

            if (String.IsNullOrWhiteSpace(currentBestTime) == true)
            {
                socialMessage = "Got #" + APP_NAME + "?";
            }
            else
            {
                socialMessage = "I survived for " + (currentBestTime.Split(':')[0] == "00" ? string.Empty : int.Parse(currentBestTime.Split(':')[0]) + " hrs ")
                                + (currentBestTime.Split(':')[0] == "00" && currentBestTime.Split(':')[1] == "00" ? string.Empty : int.Parse(currentBestTime.Split(':')[1]) + " mins and ")
                                + int.Parse(currentBestTime.Split(':')[2]) + " secs. Enough said. Booyah. Mic drop. All that. #" + APP_NAME;
            }

            if ((connectedServices.Contains("Twitter") == true) &&
                (SLComposeViewController.IsAvailable(SLServiceKind.Twitter) == true))
            {
                SLComposeViewController twitterViewController = SLComposeViewController.FromService(SLServiceKind.Twitter);

                twitterViewController.SetInitialText(socialMessage);
                twitterViewController.AddUrl(new NSUrl(APP_LINK));

                twitterViewController.CompletionHandler += (twitterobj) =>
                {
                    InvokeOnMainThread(() =>
                    {
                        DismissViewController(true, null);

                        if ((connectedServices.Contains("Facebook") == true) &&
                            (SLComposeViewController.IsAvailable(SLServiceKind.Facebook) == true))
                        {
                            SLComposeViewController facebookViewController = SLComposeViewController.FromService(SLServiceKind.Facebook);

                            facebookViewController.SetInitialText(socialMessage);
                            facebookViewController.AddUrl(new NSUrl(APP_LINK));

                            facebookViewController.CompletionHandler += (facebookobj) =>
                            {
                                InvokeOnMainThread(() =>
                                {
                                    DismissViewController(true, null);
                                    ControlMenu("Show");
                                });
                            };

                            PresentViewController(facebookViewController, true, null);
                        }
                        else
                        {
                            ControlMenu("Show");
                        }
                    });
                };

                PresentViewController(twitterViewController, true, null);
            }
            else if ((connectedServices.Contains("Facebook") == true) &&
                     (SLComposeViewController.IsAvailable(SLServiceKind.Facebook) == true))
            {
                SLComposeViewController facebookViewController = SLComposeViewController.FromService(SLServiceKind.Facebook);

                facebookViewController.SetInitialText(socialMessage);
                facebookViewController.AddUrl(new NSUrl(APP_LINK));

                facebookViewController.CompletionHandler += (facebookobj) =>
                {
                    InvokeOnMainThread(() =>
                    {
                        DismissViewController(true, null);
                        ControlMenu("Show");
                    });
                };

                PresentViewController(facebookViewController, true, null);
            }
            else
            {
                ControlMenu("Show");
            }
        }