开发者社区> 问答> 正文

关于ios CGAffineTransformScale缩放 中心点的问题

代码如下,很简单,做一个当前view的缩放动画

[UIView beginAnimations:nil context:nil];
 [UIView setAnimationDuration:0.5];
 self.view.transform = CGAffineTransformScale(CGAffineTransformIdentity, 0.5f, 0.5f);
 [UIView commitAnimations];

但现在缩放的中心点是view的中心点,达不到我的要求,可不可以动态的确定缩放中心点?

展开
收起
爵霸 2016-03-17 10:29:15 4423 0
1 条回答
写回答
取消 提交回答
  • 需要用CALayer 设置 AnchorPoint

    (0,0) 为左上角,(0,1) 为左下角,
    (1, 0)右上, (1,1) 右下

    每次改了AnchorPoint, frame 都会改变,所以要重置frame.

    #import 
    CGRect oldFrame = self.view.frame ;
    [self.view.layer setAnchorPoint: CGPointMake(0.0f, 0.0f) ];
    self.view.frame = oldFrame;
    2019-07-17 19:04:41
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
移动 App 性能监测实践(iOS篇) 立即下载
手淘iOS性能优化探索 立即下载
手淘IOS性能优化探索 立即下载