iOS POPアニメーション実践
2354 ワード
前言:昼寝がなくて眠い~用途:
丹念に作られていますが、画像は美しいのではないでしょうか.
UIViewに継承されたXTPopingViewを作成するには、しばらく機能していませんが、下-下-下の2つを実現して、どのように実現するかを見てみましょう.
Facebook POPを使用しました.
1.初期化
2.ビューの開始
3.ビューの削除
求初音ミク的片尾曲《君をのせて》的罗马拼音,谢谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
を作ることができて、多くの App
の中で比較的によく見られます.私はすでにカプセル化しました-例のダウンロードはすでに私のGitHubに置いて、ダウンロードすることができます-もっと知ります丹念に作られていますが、画像は美しいのではないでしょうか.
UIViewに継承されたXTPopingViewを作成するには、しばらく機能していませんが、下-下-下の2つを実現して、どのように実現するかを見てみましょう.
Facebook POPを使用しました.
1.初期化
- (instancetype)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
self.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.3];
[self addSubview:self.flyView];
UITapGestureRecognizer *tapGes = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapClickAction)];
[self addGestureRecognizer:tapGes];
}
return self;
}
- (UIView *)flyView
{
if (!_flyView) {
_flyView = [[UIView alloc] init];
}
return _flyView;
}
2.ビューの開始
- (void)startFly:(FlyType)type
{
switch (type) {
case FlyTypeUToD:
{
_flyView.frame = CGRectMake(SCREEN_WIDTH_XT / 2 - self.fly_w / 2, -self.fly_h, self.fly_w, self.fly_h);
}
break;
case FlyTypeDToD:
{
_flyView.frame = CGRectMake(SCREEN_WIDTH_XT / 2 - self.fly_w / 2, SCREEN_HEIGHT_XT + self.fly_h, self.fly_w, self.fly_h);
}
default:
break;
}
_flyView.backgroundColor = [UIColor purpleColor];
POPSpringAnimation *anim = [POPSpringAnimation animationWithPropertyNamed:kPOPViewCenter];
anim.toValue = [NSValue valueWithCGPoint:self.center];
//
anim.springSpeed = 5;
// -- (springSpeed )
anim.springBounciness = 10.0f;
[_flyView pop_addAnimation:anim forKey:@"animationShow"];
}
3.ビューの削除
- (void)tapClickAction
{
POPSpringAnimation *anim = [POPSpringAnimation animationWithPropertyNamed:kPOPViewCenter];
anim.toValue = [NSValue valueWithCGPoint:CGPointMake(self.center.x, SCREEN_HEIGHT_XT + self.fly_h)];
[_flyView pop_addAnimation:anim forKey:@"animationRemove"];
anim.springSpeed = 5;
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[self removeFromSuperview];
});
}
求初音ミク的片尾曲《君をのせて》的罗马拼音,谢谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!