如何更改动态视图的背景颜色?难道我设置一个计时器,并指定在循环中改变视图的背景颜色属性?结果

如何来实现这一功能?

有帮助吗?

解决方案

某处在您的代码(viewDidAppear是一个很好的点)

NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:5 // seconds
                                                  target:self
                                                selector:@selector(changeBackground:)
                                                userInfo:nil
                                                 repeats:YES];

在你的类的方法:

- (void)changeBackground:(NSTimer *)timer {

    if (iWantToCancelTimer) {
        [timer invalidate];
    }

    self.view.backgroundColor = [UIColor whateverColor];
}

这将是一个突然的变化,所以你可能会想制作动画,但是这是一个不同的问题。

其他提示

听起来像是你只是想你的看法改变背景颜色的时候每x量。对于这一点,是有问题的观点,你可以设置一个计时器,并改变它激发后台Ç的olor每次(你也许可以随机生成一些RGB值)。

可以使用+(的NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)秒目标:(ID)目标选择:(SEL)aSelector USERINFO:(ID)USERINFO重复:(BOOL)重复到计时器设置为一个选择器和在在那里,你可以更改视图背景...记住,UIKit的心不是线S AFE所以如果你有在另一个线程运行的定时器,你应该改变在主线程的意见背景..

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top