0

以下に示すように、赤と白の間でアニメーション化できる UITextField のカテゴリを作成しました。

@implementation UITextField (Additions)

-(void) flash
{
    [UIView animateWithDuration:2.0 animations:^{

        [self setBackgroundColor:[UIColor redColor]];

    } completion:^(BOOL finished) {

        [self setBackgroundColor:[UIColor whiteColor]];
    }];

}

@end

私はそれを次のように呼びます:

[self.paymentTextField flash];

初めて機能し、赤い背景が表示され、その後白い色に戻ります。しかし、2回目の呼び出しでは何もしません。

4

1 に答える 1

1

なぜうまくいかないのかわかりません。試してみましたが同じでした。ただし、色は実際にはアニメーション化されないため、代わりに次のようにすることができます。

self.backgroundColor = [UIColor redColor];
[self performSelector:@selector(setBackgroundColor:) withObject:[UIColor whiteColor] afterDelay:2];

これにより、同じ外観が得られるはずです。

于 2013-07-11T16:47:16.697 に答える