永发信息网

ios layer怎么实现frame动画?

答案:1  悬赏:40  手机版
解决时间 2021-03-17 05:06
ios layer怎么实现frame动画?
最佳答案
frame没有关键帧,可以用动画组实现
CGRect frame = itemLayer.frame;
CABasicAnimation *aniBounds = [CABasicAnimation animationWithKeyPath:@"bounds"];
aniBounds.fromValue = [NSValue valueWithCGRect:CGRectMake(0, 0, CGRectGetWidth(frame), 0)];
aniBounds.toValue = [NSValue valueWithCGRect:CGRectMake(0, 0, CGRectGetWidth(frame), CGRectGetHeight(frame))];

CABasicAnimation *aniAnchorPoint = [CABasicAnimation animationWithKeyPath:@"anchorPoint"];
aniAnchorPoint.fromValue = [NSValue valueWithCGPoint:CGPointMake(0, 1)];
aniAnchorPoint.toValue = [NSValue valueWithCGPoint:CGPointMake(0, 1)];

CABasicAnimation *aniPosition = [CABasicAnimation animationWithKeyPath:@"position"];
aniPosition.fromValue = [NSValue valueWithCGPoint:CGPointMake(CGRectGetMinX(frame), _chartHeight+3)];
aniPosition.toValue = [NSValue valueWithCGPoint:CGPointMake(CGRectGetMinX(frame), positionYto)];

CAAnimationGroup *anis = [CAAnimationGroup animation];
anis.animations = @[aniAnchorPoint,aniBounds,aniPosition];
anis.duration = 0.4;
anis.removedOnCompletion = NO;
anis.fillMode=kCAFillModeForwards;
[itemLayer addAnimation:anis forKey:nil];
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我国古代有这样一道题:“一百馒头一百僧,大
大众cc蓄电池没电后导航开不开机怎么回事
其上多柘木。其状如鸟。其的用法?
在汽车电瓶和车架上连个线有什么作用
被认定为环保失信人,对企业或个人会有什么影
你好,最近我也搭了LM2577s-adj升压电路,但
高邑石良庄石速生你更厉害,把你儿子的二婚老
33减15等于12等式成立
会计中到底会用到多少种账本和印章
给女孩子取名叫玥雅好,还是叫雅玥好?
中国邮政(博生路邮政所)怎么去啊,有知道地址
高数填空题求答。
泰勒吉他114e 用的是什么型号的琴弦
怎么操作这个
想象是美好的 现实是残酷的
推荐资讯
致家公寓怎么去啊,有知道地址的么
win10重装后软件要重新安装吗
平民忍者选什么武器和防具好
金泰亨和朴智旻玩的那个有面膜的那个背景音乐
使命召唤13无限战争按哪个键跳过剧情
听说德版的750有油电混合的,请问好吗?
周加兵修理厂地址在什么地方,我要处理点事
我时1993年11日10日出生的,想在8月24日搬新
双桨怎么造句
为什么win7的64位系统安装CH340或者CH341驱动
送年轻老师什么礼物好
求mine或者吉里吉里模拟器能玩的黄昏的禁忌之
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?