使用drawRect绘制NSString并为其设置动画

时间:2012-12-11 19:20:05

标签: iphone objective-c ios ipad

我正在使用drawRect绘制NSString,我可以在绘制NSString后设置它吗?我希望它在3.0秒后淡入/淡出。我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

您无法直接淡化绘制的字符串本身。你可以淡化图层,你可以淡化视图。将字符串绘制到其中一个上并淡化图层或视图。通常使用UILabelCATextLayer最容易做到这一点,但如果您愿意,可以在自己的图层上绘制并淡化。

答案 1 :(得分:1)

制作UILabel,然后使用动画来表达你的欲望

- (void)faceInLabel{
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 100, 50)];
    label.text = @"My String";
    [myView addSubview:label];
    label.alpha = 0;
    [UIView animateWithDuration:0.5 animations:^{
        label.alpha = 1;
    }
    completion:^(BOOL finished)
     {
         [NSTimer timerWithTimeInterval:3 target:self selector:@selector(fadeOutLabel) userInfo:nil   repeats:NO];
      }];
}
- (void)fadeOutLabel
{
    [UIView animateWithDuration:0.5 animations:^{
        label.alpha = 0;
    }];
}