2

我正在尝试将一些 iOS 代码移植到 Mac OS X。但我在移植时遇到了麻烦,

CGAffineTransform transform = CGAffineTransformMakeRoatation(-b->GetAngle());    
oneView.transform = transform

我怎样才能做到这一点?NSView 没有转换属性。

4

2 回答 2

3

您仍然可以使用转换。

通过将setWantsLayer:视图设置为YES.

之后,您可以设置图层的仿射变换:

CGAffineTransform transform = CGAffineTransformMakeRotation(-b->GetAngle());    
[[oneView layer] setAffineTransform: transform];
于 2011-07-06T03:06:07.677 回答
0

我发现使用核心动画旋转 NSView 的唯一方法是

[myView setFrameCenterRotation:angle]

但要小心使用这种方法。仅当将 myView 添加到超级视图时,它才能正常工作。您可以通过覆盖方法来跟踪它– viewWillMoveToSuperview:

享受)

于 2011-08-31T12:42:42.200 回答