所以我有这个代码向我的应用gameView
添加一些说明:
UILabel *instructions = [[UILabel alloc] initWithFrame:CGRectMake(40, 40, self.gameView.frame.size.width, 100)];
[instructions setTextColor:[UIColor whiteColor]];
[instructions setText:@"Some Instructions"];
[self.gameView addSubview:instructions];
NSLog(@"About to animate!");
[UIView animateWithDuration:2.0
delay:2.0
options:UIViewAnimationOptionBeginFromCurrentState
animations:^{ [instructions setAlpha:0.0];}
completion:^(BOOL fin) {NSLog(@"done");}];
在控制台中,我可以看到消息About to animate!
和done
,但UILabel永远不可见,同时两条消息同时出现,而不是在4秒间隔后出现。
我的理解是这个动画会显示UILabel的默认alpha值为2秒,然后在接下来的两秒内将alpha值淡化为0。我在代码的其他地方有类似的UIImageViews动画代码。