我有一個UIControl,在其中我使用了MonoTouch.CoreGraphics類來繪製一些項目,並通過AddSubview將UIControl放到UIView中。我試圖把這個觀點轉化爲模擬某種時鐘或撥號盤上的分鐘或秒針的動作。我的印象是,我可以用UIView上的Transform來做到這一點。試圖在MonoTouch中使用變換來旋轉UIView
我的UIView的名稱是容器。我已經試過:
container.Transform.Rotate(-0.78f);
我也曾嘗試:
CGAffineTransform t = CGAffineTransform.MakeIdentity();
t.Rotate(-0.78f);
container.Transform = t;
我也曾嘗試:
CGAffineTransform t = CGAffineTransform.MakeRotation(-0.78f);
container.Transform = t;
我自己也嘗試一下這種和其他組合:
UIView.BeginAnimations("rotate");
UIView.SetAnimationDuration(0.5);
container.Transform.Rotate((float)Math.PI);
UIView.CommitAnimations();
以上都沒有任何我在我的顯示器上。它絲毫不旋轉或移動。所有與iOS相關的帖子都引用了CGAffineTransformRotate,但是我找不到一個完全匹配的Mono,並假設這與我在上面做的相同。有沒有其他方法可以讓我的視圖旋轉?
等價於CGAffineTransformRotate是CGAffineTransform.Rotate()方法,用於旋轉您調用它的仿射。所以你的代碼是正確的。真正的問題是「容器」。它是什麼? 你能分享一些代碼,你看到了你試圖複製的效果嗎? – 2012-02-26 17:38:29
我正在關注如何創建一個旋轉輪並將其移植到Monotouch上的文章。我得到了繪製的形狀,並停留在試圖使用定時器旋轉的部分。這裏是文章http://www.raywenderlich.com/9864/how-to-create-a-rotating-wheel-control-with-uikit的鏈接。我的DrawWheel方法在我的UIControl類中正常工作。我創建一個我的車輪控制的實例,並使用AddSubview將其添加到UIView。我很樂意向您發送我編寫的所有代碼。請讓我知道你想讓我發送的地方。 – 2012-02-27 02:56:02
分享你的代碼最簡單的方法是打開一個關於http://bugzilla.xamarin.com的bug報告,並附上你的代碼以及這個問題的鏈接 – poupou 2012-02-28 00:56:25