2011-05-04 48 views
0

我有一个CALayer与CATextLayer子图层。当我应用转换或调整CALayer的大小时,我需要CATextLayer在其父边界内调整大小。在调整大小时,CATextLayer还需要截断其字符而不会扭曲字符的比例。当您在序列视图(下面的屏幕)中调整剪辑大小时,可以在Garageband for iPad中看到此效果。CATextLayer的动画截断

Garageband screen

在我试图调整CATextLayer内它的父层的边界,我有:

  • 设置我CATextLayer到kCATruncationMiddle的truncationMode财产。
  • 设置我的CALayer的masksToBounds财产
  • 设置CATextLayer(否则它不会画)默认的框架矩形

这里发生了什么:

  • 当我申请一个动画改造到父层(通过触摸事件),CATextLayer字符伸展和扭曲。
  • 当动画变换结束时,父图层将重绘。 CATextLayer不会出现在父图层之外,但其框架矩形仍保留在我最初设置的位置。

回答

1

像你想要做什么这听起来是动画两个CALayer的和CATextLayerbounds属性,而不是他们的transform财产。