我希望navigationBar的高度变为22,带有动画,我的代码如下,为什么它不起作用?
CGMutablePathRef path = CGPathCreateMutable();
CGRect rect = self.navigationController.navigationBar.frame;
CGPathAddRect(path, NULL, rect);
rect.size.height = 22;
CGPathAddRect(path, NULL, rect);
CAKeyframeAnimation *animation = [CAKeyframeAnimation animationWithKeyPath:@"scale"];
[animation setPath:path];
[animation setDuration:1.0];
[animation setAutoreverses:YES];
CFRelease(path);
[self.navigationController.navigationBar.layer addAnimation:animation forKey:NULL];
答案 0 :(得分:0)
我在stackoverflow上找到了像我这样的问题,这个问题的网址是 Animating Frame with CoreAnimation
他们说框架不能随CAKeyframeAnimation而改变。这可能是一个bug,或者原来无法实现CAKeyframeAnimation。
这么久,我没有回答。也许我的问题表达不清楚或其他原因。 所以,以这种状态结束问题。