在MonoTouch中缩放UIScrollView

我试图在MonoTouch中使用UIScrollView实现缩放function,但我似乎无法使其工作。

我已经看了几个关于设置Delegate的教程,但大部分都是在Obj-C中,我不能将它转换为C#。

基本上,我有一个UIScrollView在Interface Builder中有一个UIImageView作为子视图。

我已经将UIScrollView的ContentSize设置为图像的全尺寸,并且还设置了最小/最大缩放比例。 这是我的代码:

UIImage imgMap = new UIImage("img/map.png"); ivMap.Image = imgMap; svMap.MinimumZoomScale = 1.0f; svMap.MaximumZoomScale = 3.0f; svMap.ContentSize = new System.Drawing.SizeF(ivMap.Frame.Width, ivMap.Frame.Height); 

任何想法,我失踪?

编辑

我用@Geoff提供的代码创build了一个新的.xib文件,但仍然没有运气,图像只是滚动,但仍然不缩放。

 public override void ViewDidLoad () { base.ViewDidLoad (); UIScrollView sv = new UIScrollView (thisView.Frame); UIImageView iv = new UIImageView(UIImage.FromFile ("img/map.png")); sv.AddSubview (iv); sv.ContentSize = iv.Frame.Size; sv.MinimumZoomScale = 1.0f; sv.MaximumZoomScale = 3.0f; vwMineral.AddSubview(sv); } 

尝试:

 var sv = new UIScrollView (window.Frame); var iv = new UIImageView (UIImage.FromFile ("pat.jpg")); sv.AddSubview (iv); sv.ContentSize = iv.Frame.Size; sv.MinimumZoomScale = 1.0f; sv.MaximumZoomScale = 3.0f; sv.MultipleTouchEnabled = true; sv.ViewForZoomingInScrollView = delegate(UIScrollView scrollView) { return iv; }; window.AddSubview (sv); window.MakeKeyAndVisible ();