Я видел некоторые материалы в Интернете, но до сих пор не могу добраться до места, где хочу. Мне нужно оживить мой взгляд вниз, сделав его более крупным.
Вот мой код. То, что происходит здесь, заключается в том, что вместо изменения размера обзора я просто немного изменил его местоположение. Если я изменю proprty вместо "bounds.size", чтобы быть "transform.scale.y", он немного лучше, только на этот раз он расширяет представление вверх и вниз, а не только вниз.
Еще одна вещь, о которой я не говорю: являются ли эти ключи только свойствами CALayer? где я могу найти список этих ключей?
Я бы очень хотел помочь здесь. Спасибо!
int x = self.btnHead.frame.origin.x;
int y = self.btnHead.frame.origin.y;
int height = self.btnHead.frame.size.height;
int width = self.btnHead.frame.size.width;
CABasicAnimation *resizeAnimation = [CABasicAnimation animationWithKeyPath:@"bounds.size"];
[resizeAnimation setToValue:[NSValue valueWithCGSize:CGSizeMake(width,height+50)]];
resizeAnimation.fillMode = kCAFillModeForwards;
resizeAnimation.removedOnCompletion = NO;
CAAnimationGroup *animationGroup = [CAAnimationGroup animation];
animationGroup.animations = [NSArray arrayWithObjects:resizeAnimation,nil];
animationGroup.removedOnCompletion = NO;
animationGroup.fillMode = kCAFillModeForwards;
animationGroup.removedOnCompletion=NO;
animationGroup.duration = 0.1;
[self.btnHead.layer addAnimation:animationGroup forKey:@"animations"];
Изменить: размещение моего первого кода в соответствии с запросом - это просто изменит мой размер представления, но не будет анимировать, независимо от того, в какую продолжительность я вхожу.
int x = self.btnHead.frame.origin.x;
int y = self.btnHead.frame.origin.y;
int height = self.btnHead.frame.size.height;
int width = self.btnHead.frame.size.width;
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:10];
CGRect rect = CGRectMake(x,y,width ,height+BUTTON_HEIGH*2);
self.btnHead.frame = rect;
[UIView commitAnimations];