如何在一段时间间隔内更改UIButton颜色,如5-6秒?
答案 0 :(得分:6)
按照以下步骤操作:
将2张图片添加到资源文件夹(例如红色和蓝色)。
拖动XIB上的按钮,将其属性更改为自定义按钮,并设置其背景图像(至blue.png)。
在viewDidLoad
方法中执行此操作:
[NSTimer scheduledTimerWithTimeInterval:0.8
target:self
selector:@selector(changeColor:)
userInfo:nil
repeats:NO];
实施此方法:
-(void)changeColor:(id)sender
{
[btnTemp setBackgroundImage:[UIImage imageNamed:@"red.png"]
forState:UIControlStateNormal] ;
}
这是找到的好方法。
答案 1 :(得分:3)
类似的东西:
[button setBackgroundColor:[UIColor coloryouneed]];
[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:5]];
[button setBackgroundColor:[UIColor previousColor]];
答案 2 :(得分:2)
在.h文件中创建NSTimer的属性,而不是在.m文件中写下代码
-(id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.timer = [NSTimer scheduledTimerWithTimeInterval:5.0 target:self selector:@selector(changebtncolor) userInfo:nil repeats:YES];
}
return self;
}
现在你可以在changebtncolor方法中改变颜色
答案 3 :(得分:1)
你是NSTimer。将颜色设置为按钮。 [button setBackgroundColor:[UIColor redColor]];
。
安排NSTimer重置它。
[NSTimer timerWithTimeInterval:5 target:self selector:@selector(resetColor) userInfo:nil repeats:NO];
答案 4 :(得分:1)
创建一个更改颜色的线程。使用sleep(randomValue);
可以创建间隔。