Анимация слоя UIButton? - PullRequest
       24

Анимация слоя UIButton?

1 голос
/ 30 августа 2010

Я пытаюсь перенести на пульс iphone эффект пульсации, видимый в приложении на приборной панели. Моя идея заключается в том, что всякий раз, когда я размещаю кнопку в представлении макета, вокруг кнопки должен быть эффект пульсации. Тем не менее, я могу принести эффект пульсации для всего вида, но мне нужен эффект только вокруг кнопки. Я не знаю, где я ошибся. Я попробовал следующий код.

LayoutButton *tempLayoutButton=[[LayoutButton alloc] initWithObject:object];
tempLayoutButton.center=copyImage.center;
[layoutView addSubview:tempLayoutButton];  
CALayer *templayer=[CALayer layer];
tempLayoutButton.layer.masksToBounds=NO;
templayer.frame=CGRectMake(0,0,50,50);
[tempLayoutButton.layer addSublayer:templayer];

CATransition *animation = [CATransition animation];
animation.delegate = self;
animation.duration = 1.0f;
animation.timingFunction = UIViewAnimationCurveEaseInOut;
animation.type = @"rippleEffect";
[templayer  addAnimation:animation forKey:@"animation"];
[tempLayoutButton release];
[tempLayoutButton.layer addSublayer:templayer];

Если я заменим темплейер на слой LayoutView, я смогу увидеть эффект «Рипл» на всем виде. Может кто-нибудь сказать мне решение

Заранее спасибо

1 Ответ

1 голос
/ 08 ноября 2010

Я нашел ответ в одном из списков рассылки яблок.Анимация - это собственная анимация Apple, и никто не может ее использовать.И нет никакой гарантии, что анимация будет правильно отображаться на экране.Если нам нужна анимация того же типа, нам нужно манипулировать слоями и получить анимацию

...