ジェスチャの後に表示されるラベルがあり、ラベルをフェードアウトしたいと考えています。次のコードは機能しますが、いくつかのジェスチャを続けて行うと、最後のジェスチャはフェードと表示を終了せず、突然停止します。これが私のコードです:
- (void) gestureLabelAppear:(NSString *)theLabelText
{
myLabel = [[UILabel alloc] initWithFrame:CGRectMake(gestureEndPoint.x, gestureEndPoint.y, 200, 20)];
myLabel.center=CGPointMake(gestureEndPoint.x, gestureEndPoint.y);
myLabel.textAlignment = UITextAlignmentCenter;
myLabel.text =theLabelText;
[self.view addSubview:myLabel];
[self fadeOutLabels];
}
-(void)fadeOutLabels
{
[UIView animateWithDuration:3.0
delay:0.0
options:UIViewAnimationCurveEaseInOut
animations:^ {
myLabel.alpha = 0.0;
}
completion:^(BOOL finished) {
[myLabel removeFromSuperview];
NSLog(@"removed label");
}];
}
修正方法に関する提案はありますか?