gpt4 book ai didi

macos - 图层支持 View 的核心动画几何体

转载 作者:行者123 更新时间:2023-12-03 16:21:30 26 4
gpt4 key购买 nike

我有一个图层支持的 View ,想了解 anchor 是如何工作的,是否允许使用 CALayer 几何属性(而不是使用 NSView 的框架属性)

首先,引用文档:

The default value for anchorPoint is (0.5,0.5) which corresponds to the center of the layer's bounds

但是当我尝试直接将 anchor 的值更改为 (0.5,0.5) 时,我得到了偏移。这里是例子,红色区域是原始位置(当没有任何应用到 anchor 时),按钮被移动到左下角:

enter image description here

当我将 anchor 设置为 (0,0) 时,按钮放置在应有的位置:

enter image description here

更新:

这是我用来实例化 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];

有趣的是,对于图层支持的 View 来说,默认 anchor 似乎是 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

最佳答案

以下是 Apple 关于 NSView 的文档的引用:

When using layer-backed views you should never interact directly with the layer.

似乎这段代码跨越了您可以使用层支持 View 执行的操作的边界。

关于macos - 图层支持 View 的核心动画几何体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13740669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com