2012-01-11 9 views
16

私はMonoTouchでMonoTouch:Frame.Originはどこですか?

imageView.frame.origin.x = CGRectGetMidX(view.bounds) - 
      CGRectGetMidX(imageView.bounds) 

へのObjective-Cでは、この中心コードスニップを翻訳しようとしています。しかしOriginがどこにあるか見つけることができません。

答えて

36

MonoTouchはGCRectからSystem.Drawing.RectangleFにマップしています。これは、.NET開発者が使用しているもの(例:System.Drawing/Windows Forms ...)に近いためです。

このようにimageView.frame.origin.xは、で簡略化できるimageView.Frame.Location.Xになります。

ソースファイルにusing MonoTouch.CoreGraphics;を追加すると、CGRectGetMidXの代替となる拡張方法が表示されます。

views.Bounds.GetMidX() 

ので

imageView.frame.origin.x = CGRectGetMidX(view.bounds) - CGRectGetMidX(imageView.bounds); 

も ​​`CGRect.Width`と

imageView.Frame.X = view.Bounds.GetMidX() - imageView.Bounds.GetMidX(); 
+0

い' CGRect.Size.Width'マップになる必要がありますか? – mr5