【发布时间】:2011-09-08 15:47:28
【问题描述】:
首先,我是 Xcode/Objective-C 的新手,所以放轻松! :) 我制作了一个测试应用程序,通过按下一些按钮,背景会发生变化。我有一个红色、蓝色、绿色、白色、黑色和复活按钮。
我通过按下所有颜色按钮让应用程序更改背景颜色。但是,我想让应用程序在颜色之间循环,比如按下 Revive 按钮时非常快 100 倍。由于某种原因,它不起作用。
以下是无效的代码:
使用下面的代码,只改变最后一种颜色。
- (IBAction)Revive:(id)sender {
for (int y=0; y < 100; y++) {
view1.backgroundColor = [UIColor redColor];
view1.backgroundColor = [UIColor greenColor];
view1.backgroundColor = [UIColor blueColor];
view1.backgroundColor = [UIColor whiteColor];
view1.backgroundColor = [UIColor blackColor];
}
}
使用下面的代码,在没有循环的情况下,应用程序从白色变为黑色
- (IBAction)Revive:(id)sender {
[UIView animateWithDuration:0.2 animations:^{
view1.backgroundColor = [UIColor redColor];
view1.backgroundColor = [UIColor greenColor];
view1.backgroundColor = [UIColor blueColor];
view1.backgroundColor = [UIColor whiteColor];
view1.backgroundColor = [UIColor blackColor];
}];
[UIView commitAnimations];
}
有人知道为什么会发生这种情况并解决我的问题吗?
【问题讨论】:
标签: xcode uiview colors cycle background-color