3

コアアニメーションを使って点滅するテキストが欲しいです。次のコードを入力しましたが、テキストが表示されず、点滅も表示されません。

// Create a blinking text
UILabel* labelText = [[UILabel alloc] initWithFrame:CGRectMake(355, 490, 400, 50)];
labelText.text = @"Tap to start";
labelText.backgroundColor = [UIColor clearColor];
[self.view addSubview:labelText];


void (^animationLabel) (void) = ^{
        labelText.alpha = 1;
};
void (^completionLabel) (BOOL) = ^(BOOL f) {
        labelText.alpha = 0;
};

NSUInteger opts =  UIViewAnimationOptionAutoreverse | UIViewAnimationOptionRepeat;
[UIView animateWithDuration:1.f delay:0 options:opts
                     animations:animationLabel completion:completionLabel];

何か案が?私のアプローチで何が間違っているのか本当にわかりません。

4

1 に答える 1

3

ちょっとばかげた間違いですが、将来知っておくとよいでしょう - コードは

void (^animationLabel) (void) = ^{
        labelText.alpha = 0;
    };
    void (^completionLabel) (BOOL) = ^(BOOL f) {
        labelText.alpha = 1;
    }; 

アルファは 0 に設定する必要があるため、完了ブロックではなくアニメーション ブロックの一部にする必要があります。

于 2012-04-17T07:54:26.533 に答える