void SegmentValueChanged(object sender, EventArgs e) { if (_viewSegment.SelectedSegment == 0) { if (_previewView != null) { _previewView.RemoveFromSuperview(); _previewView.Dispose(); _previewView = null; } Add(TextView); TextView.BecomeFirstResponder(); } else { // if (_previewView == null) // _previewView = new UIWebView(this.View.Bounds); // // TextView.RemoveFromSuperview(); // Add(_previewView); // // var markdownService = IoC.Resolve<IMarkdownService>(); // var path = MarkdownHtmlGenerator.CreateFile(markdownService.Convert(Text)); // var uri = Uri.EscapeUriString("file://" + path) + "#" + Environment.TickCount; // _previewView.LoadRequest(new MonoTouch.Foundation.NSUrlRequest(new MonoTouch.Foundation.NSUrl(uri))); } }
void SegmentValueChanged(object sender, EventArgs e) { if (_viewSegment.SelectedSegment == 0) { if (_previewView != null) { _previewView.RemoveFromSuperview(); _previewView.Dispose(); _previewView = null; } Add(TextView); TextView.BecomeFirstResponder(); } else { if (_previewView == null) { _previewView = new UIWebView(this.View.Bounds); } TextView.RemoveFromSuperview(); Add(_previewView); var markdownService = IoC.Resolve <IMarkdownService>(); var markdownView = new MarkdownView() { Model = markdownService.Convert(TextView.Text) }; _previewView.LoadHtmlString(markdownView.GenerateString(), null); } }
void TapImageAction1(UITapGestureRecognizer tap) { if (Reachability.IsHostReachable(Settings._baseDomain)) { LoadingOverlay loadingOverlay = new LoadingOverlay(View.Frame); var webView = new UIWebView(View.Frame); webView.LoadFinished += (sender, e) => { loadingOverlay.Hide(); }; var banManProHREF = Settings.BanManProURL.Replace("Task=Get", "Task=Click"); ; webView.LoadRequest(new NSUrlRequest(new NSUrl(banManProHREF))); UIView.BeginAnimations("fadeflag"); UIView.Animate(1, () => { tap.View.Alpha = .5f; }, () => { View.AddSubview(webView); View.AddSubview(loadingOverlay); UIButton closeButton = new UIButton(new CGRect(View.Bounds.Width - 75, 0, 75, 50)); closeButton.SetImage(UIImage.FromBundle("close"), UIControlState.Normal); closeButton.BackgroundColor = UIColor.White.ColorWithAlpha(.5f); closeButton.TouchUpInside += (sender, e) => { try { webView.RemoveFromSuperview(); closeButton.RemoveFromSuperview(); } finally { webView.Dispose(); } }; UIImageView imageView = new UIImageView(new CGRect(View.Bounds.Width - 75, View.Bounds.Height / 2, 75, 50)); imageView.Image = UIImage.FromBundle("swipe_left"); imageView.Alpha = .5f; webView.AddSubview(closeButton); webView.AddSubview(imageView); tap.View.Alpha = 1f; }); UIView.CommitAnimations(); } else { HelperMethods.SendBasicAlert("Connect to a Network", "Please connect to a network to view this ad"); } }
protected override void Dispose(bool disposing) { base.Dispose(disposing); if (disposing) { WebView?.Dispose(); WebView = null; } }
public override void ViewDidDisappear(bool animated) { base.ViewDidDisappear(animated); if (WebView != null) { WebView.RemoveFromSuperview(); WebView.Dispose(); WebView = null; } }
public override void ViewDidDisappear(bool animated) { if (webView != null) { webView.RemoveFromSuperview(); webView.Dispose(); webView = null; } base.ViewWillDisappear(animated); }
protected MarkdownComposerView(IMarkdownService markdownService) { TextView.Font = UIFont.SystemFontOfSize(16f); TextView.Changed += (sender, e) => ViewModel.Text = TextView.Text; this.WhenAnyValue(x => x.ViewModel.Text) .Subscribe(x => Text = x); this.WhenAnyValue(x => x.ViewModel.PostToImgurCommand) .Select(x => x == null ? null : new MarkdownAccessoryView(TextView, ViewModel.PostToImgurCommand)) .Subscribe(x => TextView.InputAccessoryView = x); _viewSegment = new UISegmentedControl(new [] { "Compose", "Preview" }); _viewSegment.SelectedSegment = 0; NavigationItem.TitleView = _viewSegment; _viewSegment.ValueChanged += (sender, e) => { if (_viewSegment.SelectedSegment == 0) { if (_previewView != null) { _previewView.RemoveFromSuperview(); _previewView.Dispose(); _previewView = null; } Add(TextView); TextView.BecomeFirstResponder(); } else { if (_previewView == null) { _previewView = new UIWebView(this.View.Bounds); } TextView.RemoveFromSuperview(); Add(_previewView); var markdownView = new MarkdownView { Model = markdownService.Convert(TextView.Text) }; _previewView.LoadHtmlString(markdownView.GenerateString(), null); } }; }
protected MarkdownComposerViewController(IMarkdownService markdownService) { TextView.Font = UIFont.PreferredBody; TextView.Changed += (sender, e) => ViewModel.Text = TextView.Text; TextView.InputAccessoryView = new MarkdownAccessoryView(TextView); this.WhenAnyValue(x => x.ViewModel.Text) .Subscribe(x => Text = x); var viewSegment = new UISegmentedControl(new [] { "Compose", "Preview" }); viewSegment.SelectedSegment = 0; NavigationItem.TitleView = viewSegment; viewSegment.ValueChanged += (sender, e) => { if (viewSegment.SelectedSegment == 0) { if (_previewView != null) { _previewView.RemoveFromSuperview(); _previewView.Dispose(); _previewView = null; } Add(TextView); TextView.BecomeFirstResponder(); } else { if (_previewView == null) { _previewView = new UIWebView(this.View.Bounds); } TextView.RemoveFromSuperview(); Add(_previewView); var markdown = markdownService.Convert(TextView.Text); var model = new DescriptionModel(markdown, (int)UIFont.PreferredSubheadline.PointSize); var markdownView = new MarkdownView { Model = model }; _previewView.LoadHtmlString(markdownView.GenerateString(), null); } }; }
public override void Selected (DialogViewController dvc, UITableView tableView, NSIndexPath path) { int i = 0; var vc = new WebViewController (this) { Autorotate = dvc.Autorotate }; web = new UIWebView (UIScreen.MainScreen.Bounds) { BackgroundColor = UIColor.White, ScalesPageToFit = true, AutoresizingMask = UIViewAutoresizing.All }; web.LoadStarted += delegate { // this is called several times and only one UIActivityIndicatorView is needed if (i++ == 0) { var indicator = new UIActivityIndicatorView (UIActivityIndicatorViewStyle.White); vc.NavigationItem.RightBarButtonItem = new UIBarButtonItem (indicator); indicator.StartAnimating (); } NetworkActivity = true; }; web.LoadFinished += delegate { if (--i == 0) { // we stopped loading, remove indicator and dispose of UIWebView vc.NavigationItem.RightBarButtonItem = null; web.StopLoading (); web.Dispose (); } NetworkActivity = false; }; web.LoadError += (webview, args) => { NetworkActivity = false; vc.NavigationItem.RightBarButtonItem = null; if (web != null) web.LoadHtmlString ( String.Format ("<html><center><font size=+5 color='red'>{0}:<br>{1}</font></center></html>", "An error occurred:".GetText (), args.Error.LocalizedDescription), null); }; vc.NavigationItem.Title = Caption; vc.View.AutosizesSubviews = true; vc.View.AddSubview (web); dvc.ActivateController (vc); web.LoadRequest (NSUrlRequest.FromUrl (nsUrl)); }
public void Dispose() { WebView.RemoveFromSuperview(); WebView.Dispose(); WebView = null; }
public static void LoadWebViewWithAd(UITapGestureRecognizer tap, Ad ad, UIView mainView) { if (Reachability.IsHostReachable(Settings._baseDomain)) { LoadingOverlay loadingOverlay = new LoadingOverlay(mainView.Frame); var frame = new CGRect(0, 0, mainView.Bounds.Width, mainView.Bounds.Height); var webView = new UIWebView(frame); webView.LoadFinished += (sender, e) => { loadingOverlay.Hide(); }; var url = ad.AircraftForSaleURL; //commenting to test banmanpro //var url = "https://www.globalair.com/banmanpro/ad.aspx?ZoneID=94&Task=Get&Mode=HTML&SiteID=1&PageID=78751"; webView.LoadRequest(new NSUrlRequest(new NSUrl(url))); UIView.BeginAnimations("fadeflag"); UIView.Animate(1, () => { tap.View.Alpha = .5f; }, () => { mainView.AddSubview(webView); mainView.AddSubview(loadingOverlay); UIButton closeButton = new UIButton(new CGRect(mainView.Bounds.Width - 75, 0, 75, 50)); closeButton.SetImage(UIImage.FromBundle("close"), UIControlState.Normal); closeButton.BackgroundColor = UIColor.Black; closeButton.TouchUpInside += (sender, e) => { try { webView.RemoveFromSuperview(); closeButton.RemoveFromSuperview(); } finally { webView.Dispose(); } }; int width, height; if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Pad) { width = 110; height = 75; } else { width = 60; height = 40; } UIImageView imageView = new UIImageView(new CGRect(mainView.Bounds.Width - width, mainView.Bounds.Height / 2, width, height)); imageView.Image = UIImage.FromBundle("swipe_left"); imageView.Alpha = .5f; imageView.UserInteractionEnabled = true; imageView.BackgroundColor = UIColor.Gray; imageView.ContentMode = UIViewContentMode.ScaleAspectFit; imageView.Layer.CornerRadius = 20; //imageView.MultipleTouchEnabled = true; webView.AddSubview(imageView); webView.AddSubview(closeButton); tap.View.Alpha = 1f; }); UIView.CommitAnimations(); } else { SendBasicAlert("Connect to a Network", "Please connect to a network to view this ad"); } }
public override void RowSelected(UITableView tableView, NSIndexPath indexPath) { var cell = tableView.CellAt(indexPath); if (Reachability.IsHostReachable(Settings._baseDomain)) { var ad = Owner.FavoritesAdList[indexPath.Row]; var statusBarHeight = UIApplication.SharedApplication.StatusBarFrame.Height; var tabBarHeight = Owner.TabBarController.TabBar.Bounds.Height; var frame = new CGRect(0, statusBarHeight, Owner.View.Bounds.Width, Owner.View.Bounds.Height - (statusBarHeight + tabBarHeight)); var webView = new UIWebView(frame); LoadingOverlay loadingOverlay = new LoadingOverlay(Owner.View.Frame); webView.LoadFinished += (sender, e) => { loadingOverlay.Hide(); }; var url = ad.AircraftForSaleURL; webView.LoadRequest(new NSUrlRequest(new NSUrl(url))); UIView.BeginAnimations("fadeflag"); UIView.Animate(1, () => { cell.Alpha = .5f; }, () => { Owner.View.AddSubview(webView); Owner.View.AddSubview(loadingOverlay); UIButton closeButton = new UIButton(new CGRect(Owner.View.Bounds.Width - 50, 0, 50, 50)); closeButton.SetImage(UIImage.FromBundle("close"), UIControlState.Normal); closeButton.BackgroundColor = UIColor.Black; closeButton.TouchUpInside += (sender, e) => { try { webView.RemoveFromSuperview(); closeButton.RemoveFromSuperview(); } finally { webView.Dispose(); } }; //Owner.View.AddSubview(closeButton); webView.AddSubview(closeButton); cell.Alpha = 1f; }); UIView.CommitAnimations(); //} } else { HelperMethods.SendBasicAlert("Connect to a Network", "Please connect to a network to view this ad"); } tableView.DeselectRow(indexPath, true); }