void UpdateImage(UIImage image, NSData imageData) { if (imageData != null) { ScalingImageView.UpdateImageData(imageData); } else { ScalingImageView.UpdateImage(image); } if (imageData != null || image != null) { LoadingView.RemoveFromSuperview(); } else { View.AddSubview(LoadingView); } }
public void DidDoubleTapWithGestureRecognizer(UITapGestureRecognizer recognizer) { var pointInView = recognizer.LocationInView(ScalingImageView.ImageView); var newZoomScale = ScalingImageView.MaximumZoomScale; if ((ScalingImageView.ZoomScale >= ScalingImageView.MinimumZoomScale) || (Math.Abs(ScalingImageView.ZoomScale - ScalingImageView.MaximumZoomScale) <= 0.01)) { newZoomScale = ScalingImageView.MinimumZoomScale; } var scrollViewSize = ScalingImageView.Bounds.Size; var width = scrollViewSize.Width / newZoomScale; var height = scrollViewSize.Height / newZoomScale; var originX = pointInView.X - (width / 2.0); var originY = pointInView.Y - (height / 2.0); var rectToZoomTo = new CGRect(originX, originY, width, height); ScalingImageView.ZoomToRect(rectToZoomTo, true); }