我在IBaction(UIButton)里面有故事板和流行动画代码:
@property (strong, nonatomic) IBOutlet UIView *animationView;
...
...
POPBasicAnimation *animationCircle = [POPBasicAnimation animationWithPropertyNamed:kPOPLayerCornerRadius];
animationCircle.toValue = @(self.animationView.layer.cornerRadius/2);
animationCircle.name = @"animacijaCircle";
animationCircle.delegate = self;
[self.animationView pop_addAnimation:animationCircle forKey:@"animacijaCircle"];
我的动画无效,我不知道为什么......
我在调试区域有这个:
2015-03-17 11:28:00.321 customControll[5759:325909] -[UIView cornerRadius]: unrecognized selector sent to instance 0x7fc79ac720c0
我的异常断点os停留在pop框架的这一部分:
{kPOPLayerCornerRadius,
^(CALayer *obj, CGFloat values[]) {
values[0] = [obj cornerRadius];// exception breakpoint is on this line here
},
^(CALayer *obj, const CGFloat values[]) {
[obj setCornerRadius:values[0]];
},
kPOPThresholdRadius}
你也可以给我一个我可以使用pop的cornerRadius动画的例子,我只想让它与Facebook pop一起使用。
谢谢!
答案 0 :(得分:0)
kPOPLayerCornerRadius
是图层属性而不是视图属性,因此您需要将动画添加到图层而不是视图。所以这一行:
[self.animationView pop_addAnimation:animationCircle forKey:@"animacijaCircle"];
应该是:
[self.animationView.layer pop_addAnimation:animationCircle forKey:@"animacijaCircle"];