MonoTouch: где находится Frame.Origin? - PullRequest
19 голосов
/ 12 января 2012

Я пытаюсь перевести этот фрагмент кода в Objective-C в MonoTouch

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

Но не могу найти где Origin.

1 Ответ

40 голосов
/ 12 января 2012

MonoTouch сопоставляет GCRect с System.Drawing.RectangleF, поскольку оно ближе к тому, что использовали разработчики .NET (например, System.Drawing / Windows Forms ...).

Как таковое imageView.frame.origin.x станет imageView.Frame.Location.X, что может быть упрощено на imageView.Frame.X.

Если вы добавите using MonoTouch.CoreGraphics; к вашему исходному файлу, вы получите методы расширения, которые обеспечат вам замену CGRectGetMidX, например

views.Bounds.GetMidX ()

So

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

должно стать

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