我正在尝试将一些 iOS 代码移植到 Mac OS X。但我在移植时遇到了麻烦,
CGAffineTransform transform = CGAffineTransformMakeRoatation(-b->GetAngle());
oneView.transform = transform
我怎样才能做到这一点?NSView 没有转换属性。
我正在尝试将一些 iOS 代码移植到 Mac OS X。但我在移植时遇到了麻烦,
CGAffineTransform transform = CGAffineTransformMakeRoatation(-b->GetAngle());
oneView.transform = transform
我怎样才能做到这一点?NSView 没有转换属性。
您仍然可以使用转换。
通过将setWantsLayer:
视图设置为YES
.
之后,您可以设置图层的仿射变换:
CGAffineTransform transform = CGAffineTransformMakeRotation(-b->GetAngle());
[[oneView layer] setAffineTransform: transform];
我发现使用核心动画旋转 NSView 的唯一方法是
[myView setFrameCenterRotation:angle]
但要小心使用这种方法。仅当将 myView 添加到超级视图时,它才能正常工作。您可以通过覆盖方法来跟踪它– viewWillMoveToSuperview:
享受)