我对 Cocoa 很陌生,但想知道如何更改 CALayer 的坐标系。我阅读了Core Animation Programming Guide 中的Layer Geometry and Transforms文章,但仍然需要一些实用的建议。
默认坐标系在左下角有 (0,0)。我想将其更改为图层的中心。那可能吗?
我尝试了什么:使用 CATransform3DTranslate 作为 sublayerTransform 到图层框架的 MidX 和 MidY,子图层显示在正确的位置。在 setFrameSize 事件中,翻译应该被重新计算并再次应用。我宁愿自动刷新(没有“步骤”)。
或者我应该使用 kCAConstraintMidX 将子层 MidX 与层 MidX 相关联并使用偏移量?实际上,我使用 CATextLayers 作为子图层,并且希望将文本居中对齐,从而将文本的中心相对于超级图层的中心定位。我试过这个,但是当我调整超级层的大小时它似乎没有自动刷新。