そのため、ユーザーが画面をタップしたときに典型的なフォーカス アニメーションである正方形のボックスを表示したいと考えています。これが私が試したことです:
-(void)showFocusAnimation:(CGPoint)location{
UIView *square = [[UIView alloc]initWithFrame:CGRectMake(location.x, location.y, 40, 40)];
square.alpha=1.0;
square.layer.borderColor = (__bridge CGColorRef)[UIColor colorWithRed:12.0/255.0 green:185.0/255.0 blue:249.0/255.0 alpha:1];
square.layer.borderWidth = 2.0;
[overlayView addSubview:square];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:.1];
square.frame = CGRectMake(location.x, location.y, 90, 90);
[UIView commitAnimations];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:.1];
square.frame = CGRectMake(location.x, location.y, 40, 40);
[UIView commitAnimations];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:.2];
square.frame = CGRectMake(location.x, location.y, 90, 90);
square.alpha = 0;
[UIView commitAnimations];
}
解決できないように見える問題がいくつかあります。
境界線が表示されません。
現在、ユーザーが画面をタップしたポイントから四角形を描いています。ユーザーがタップしたポイントは、実際には正方形の中心である必要があります。
アニメーションを正しく取得できないようです。私がやろうとしているのは、正方形のサイズを小さくし、大きくしてから、もう一度小さくしてから
alpha = 0
.
3 つの異なるアニメーションがあればうまくいくかもしれないと思いましたが、うまくいきません。