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"; } }; }
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"; } }; }
public override void ViewDidLoad() { base.ViewDidLoad(); NavBackBtn.TouchUpInside += delegate { this.NavigationController.PopViewControllerAnimated(true); }; WebShowSocialNetworksBtn.TouchUpInside += delegate { WebNavCloseBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebTweetBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebPostBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebNavCloseBtn.Hidden = false; WebTweetBtn.Hidden = false; WebPostBtn.Hidden = false; UIView.AnimateNotify(0.4, 0, 0.65f, 0.0f, UIViewAnimationOptions.CurveEaseIn, delegate { WebTitle.Transform = CGAffineTransform.MakeScale(0f, 0f); WebShowSocialNetworksBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); NavBackBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebNavCloseBtn.Transform = CGAffineTransform.MakeScale(1f, 1f); WebTweetBtn.Transform = CGAffineTransform.MakeScale(1f, 1f); WebPostBtn.Transform = CGAffineTransform.MakeScale(1f, 1f); }, null); }; WebNavCloseBtn.TouchUpInside += delegate { UIView.AnimateNotify(0.4, 0, 0.65f, 0.0f, UIViewAnimationOptions.CurveEaseIn, delegate { WebNavCloseBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebTweetBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebPostBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebTitle.Transform = CGAffineTransform.MakeScale(1f, 1f); WebShowSocialNetworksBtn.Transform = CGAffineTransform.MakeScale(1f, 1f); NavBackBtn.Transform = CGAffineTransform.MakeScale(1f, 1f); }, null); }; WebTweetBtn.TouchUpInside += delegate { slComposer = SLComposeViewController.FromService(SLServiceType.Twitter); slComposer.AddUrl(new NSUrl(_url)); slComposer.CompletionHandler += (result) => { slComposer.DismissViewController(true, null); }; PresentViewController(slComposer, true, null); }; WebPostBtn.TouchUpInside += delegate { slComposer = SLComposeViewController.FromService(SLServiceType.Facebook); slComposer.AddUrl(new NSUrl(_url)); slComposer.CompletionHandler += (result) => { slComposer.DismissViewController(true, null); }; PresentViewController(slComposer, true, null); }; WebBackBtn.TouchUpInside += delegate { WebView.GoBack(); }; WebForwardBtn.TouchUpInside += delegate { WebView.GoForward(); }; WebToolBarRefreshBtn.TouchUpInside += delegate { if (WebTweetBtn.Hidden == false) { UIView.AnimateNotify(0.4, 0, 0.65f, 0f, UIViewAnimationOptions.CurveEaseIn, delegate { WebNavCloseBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebTweetBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebPostBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebTitle.Transform = CGAffineTransform.MakeScale(1f, 1f); NavBackBtn.Transform = CGAffineTransform.MakeScale(1f, 1f); WebLoadingSpinner.Transform = CGAffineTransform.MakeScale(1f, 1f); WebLoadingSpinner.StartAnimating(); }, null); } else { UIView.AnimateNotify(0.4, 0, 0.65f, 0f, UIViewAnimationOptions.CurveEaseIn, delegate { WebShowSocialNetworksBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebLoadingSpinner.Transform = CGAffineTransform.MakeScale(1f, 1f); WebLoadingSpinner.StartAnimating(); }, null); } WebView.Reload(); if (!isLoaded) { LoadWebUrl(_url); } }; WebView.LoadStarted += delegate { if (WebTweetBtn.Hidden == false) { UIView.AnimateNotify(0.4, 0, 0.65f, 0f, UIViewAnimationOptions.CurveEaseIn, delegate { WebNavCloseBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebTweetBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebPostBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebTitle.Transform = CGAffineTransform.MakeScale(1f, 1f); NavBackBtn.Transform = CGAffineTransform.MakeScale(1f, 1f); WebLoadingSpinner.Transform = CGAffineTransform.MakeScale(1f, 1f); WebLoadingSpinner.StartAnimating(); }, null); } else { UIView.AnimateNotify(0.4, 0, 0.65f, 0f, UIViewAnimationOptions.CurveEaseIn, delegate { WebShowSocialNetworksBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); WebLoadingSpinner.Transform = CGAffineTransform.MakeScale(1f, 1f); WebLoadingSpinner.StartAnimating(); }, null); } }; WebView.LoadFinished += delegate { WebShowSocialNetworksBtn.Hidden = false; WebShowSocialNetworksBtn.Transform = CGAffineTransform.MakeScale(0f, 0f); UIView.AnimateNotify(0.4, 0, 0.65f, 0f, UIViewAnimationOptions.CurveEaseIn, delegate { WebShowSocialNetworksBtn.Transform = CGAffineTransform.MakeScale(1f, 1f); WebLoadingSpinner.Transform = CGAffineTransform.MakeScale(0f, 0f); }, delegate { WebLoadingSpinner.StopAnimating(); isLoaded = true; }); }; WebView.LoadError += delegate(object sender, UIWebErrorArgs e) { if (!e.Error.ToString().Contains("NSURLErrorDomain")) { WebLoadingSpinner.StopAnimating(); WebShowSocialNetworksBtn.Alpha = 1; UIAlertView alert = new UIAlertView("Error", "Problem connecting.\n" + "Please check your connection and try again.", null, "OK", null); alert.Show(); } }; }
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"); } }