/// <summary> /// Initializes the image ScrollView /// </summary> private void SetImageScrollView() { // Initialize scrollview ImageScrollView.ContentSize = InputImage.Size; ImageScrollView.AddSubview(imageView); ImageScrollView.ViewForZoomingInScrollView += (UIScrollView sv) => { return(imageView); }; ImageScrollView.DidZoom += (object sender, EventArgs e) => { CenterScrollViewContents(ImageScrollView, imageView); }; imageView.ContentMode = UIViewContentMode.Center; OriginalImageScrollView.ContentSize = InputImage.Size; OriginalImageScrollView.AddSubview(originalImageView); OriginalImageScrollView.DidZoom += (object sender, EventArgs e) => { CenterScrollViewContents(OriginalImageScrollView, originalImageView); }; OriginalImageScrollView.ViewForZoomingInScrollView += (UIScrollView sv) => { return(originalImageView); }; originalImageView.ContentMode = UIViewContentMode.Center; // Get Image + Frame widths and heights var imgWidth = InputImage.Size.Width; var imgHeight = InputImage.Size.Height; var frameWidth = ImageScrollView.Frame.Size.Width; var frameHeight = ImageScrollView.Frame.Size.Height; // Compute scale nfloat scaleWidth = frameWidth / imgWidth; nfloat scaleHeight = frameHeight / imgHeight; nfloat minScale = (nfloat)Math.Min(scaleWidth, scaleHeight); // Apply zoom contraints given the minimum scale ImageScrollView.MinimumZoomScale = minScale; ImageScrollView.MaximumZoomScale = Constants.MaximumResultsImageZoomScale; ImageScrollView.ZoomScale = minScale; OriginalImageScrollView.MinimumZoomScale = minScale; OriginalImageScrollView.MaximumZoomScale = Constants.MaximumResultsImageZoomScale; OriginalImageScrollView.ZoomScale = minScale; // Center the image in the scroll view CenterScrollViewContents(ImageScrollView, imageView); CenterScrollViewContents(OriginalImageScrollView, originalImageView); }
void ReleaseDesignerOutlets() { if (AnalyzedImageDateHeaderLabel != null) { AnalyzedImageDateHeaderLabel.Dispose(); AnalyzedImageDateHeaderLabel = null; } if (AnalyzedImageDateLabel != null) { AnalyzedImageDateLabel.Dispose(); AnalyzedImageDateLabel = null; } if (AnalyzedImageFileNameHeaderLabel != null) { AnalyzedImageFileNameHeaderLabel.Dispose(); AnalyzedImageFileNameHeaderLabel = null; } if (AnalyzedImageFileNameLabel != null) { AnalyzedImageFileNameLabel.Dispose(); AnalyzedImageFileNameLabel = null; } if (AnalyzedImageInfoView != null) { AnalyzedImageInfoView.Dispose(); AnalyzedImageInfoView = null; } if (AnalyzedImageInfoViewBottomConstraint != null) { AnalyzedImageInfoViewBottomConstraint.Dispose(); AnalyzedImageInfoViewBottomConstraint = null; } if (AnalyzedImageInfoViewHeightConstraint != null) { AnalyzedImageInfoViewHeightConstraint.Dispose(); AnalyzedImageInfoViewHeightConstraint = null; } if (ButtonSeeMore != null) { ButtonSeeMore.Dispose(); ButtonSeeMore = null; } if (ConstraintImageViewWrapperTrailing != null) { ConstraintImageViewWrapperTrailing.Dispose(); ConstraintImageViewWrapperTrailing = null; } if (ConstraintPrimaryTableViewTop != null) { ConstraintPrimaryTableViewTop.Dispose(); ConstraintPrimaryTableViewTop = null; } if (ConstraintSecondaryTableViewBottom != null) { ConstraintSecondaryTableViewBottom.Dispose(); ConstraintSecondaryTableViewBottom = null; } if (ConstraintSecondaryTableViewTop != null) { ConstraintSecondaryTableViewTop.Dispose(); ConstraintSecondaryTableViewTop = null; } if (ImageScrollView != null) { ImageScrollView.Dispose(); ImageScrollView = null; } if (ImageViewWrapper != null) { ImageViewWrapper.Dispose(); ImageViewWrapper = null; } if (OriginalImageDateHeaderLabel != null) { OriginalImageDateHeaderLabel.Dispose(); OriginalImageDateHeaderLabel = null; } if (OriginalImageDateLabel != null) { OriginalImageDateLabel.Dispose(); OriginalImageDateLabel = null; } if (OriginalImageFileNameHeaderLabel != null) { OriginalImageFileNameHeaderLabel.Dispose(); OriginalImageFileNameHeaderLabel = null; } if (OriginalImageFileNameLabel != null) { OriginalImageFileNameLabel.Dispose(); OriginalImageFileNameLabel = null; } if (OriginalImageInfoView != null) { OriginalImageInfoView.Dispose(); OriginalImageInfoView = null; } if (OriginalImageInfoViewBottomConstraint != null) { OriginalImageInfoViewBottomConstraint.Dispose(); OriginalImageInfoViewBottomConstraint = null; } if (OriginalImageInfoViewHeightConstraint != null) { OriginalImageInfoViewHeightConstraint.Dispose(); OriginalImageInfoViewHeightConstraint = null; } if (OriginalImageScrollView != null) { OriginalImageScrollView.Dispose(); OriginalImageScrollView = null; } if (OriginalImageWrapper != null) { OriginalImageWrapper.Dispose(); OriginalImageWrapper = null; } if (SecondaryTableViewConditionsList != null) { SecondaryTableViewConditionsList.Dispose(); SecondaryTableViewConditionsList = null; } if (SeeMoreWrapper != null) { SeeMoreWrapper.Dispose(); SeeMoreWrapper = null; } if (TableViewConditionsList != null) { TableViewConditionsList.Dispose(); TableViewConditionsList = null; } }