我有一个支持图层的视图,并且想了解锚点是如何为它工作的,是否允许它使用 CALayer 几何属性(而不是使用 NSView 的框架属性)
首先,引用文档:
anchorPoint 的默认值为 (0.5,0.5),对应于图层边界的中心
但是当我尝试直接将锚点的值更改为 (0.5,0.5) 时,我得到了偏移。这是示例,红色区域是原始位置(当没有应用到锚点时),按钮被移动到左下角:
当我将锚点设置为 (0,0) 按钮时,它应该在:
更新:
这是我用来实例化 Button 的代码:
self.button = [[NSButton alloc] initWithFrame:NSMakeRect(130, 130, 100, 40)];
self.button.title = @"My Title";
self.button.wantsLayer = YES;
NSLog(@"Button anchor Point is : (%f;%f)", self.button.layer.anchorPoint.x, self.button.layer.anchorPoint.y);
[panelView addSubview:self.button];
有趣的是,似乎对于 layer-backed view 的默认锚点是 0,0:
NSLog(@"Button anchor Point is : (%f;%f)", self.button.layer.anchorPoint.x, self.button.layer.anchorPoint.y);
产生 (0.000000;0.000000)
毕竟,OS X 部署目标是 10.8