Facebook pop kPOPLayerCornerRadius 不工作
Facebook pop kPOPLayerCornerRadius is not working
我在 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 一起工作。
谢谢!
kPOPLayerCornerRadius
是层 属性 而不是视图 属性 因此您需要将动画添加到层而不是视图。所以这一行:
[self.animationView pop_addAnimation:animationCircle forKey:@"animacijaCircle"];
应该是:
[self.animationView.layer pop_addAnimation:animationCircle forKey:@"animacijaCircle"];
我在 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 一起工作。
谢谢!
kPOPLayerCornerRadius
是层 属性 而不是视图 属性 因此您需要将动画添加到层而不是视图。所以这一行:
[self.animationView pop_addAnimation:animationCircle forKey:@"animacijaCircle"];
应该是:
[self.animationView.layer pop_addAnimation:animationCircle forKey:@"animacijaCircle"];