所以我有一个定时延迟动作,以便当按下按钮时它会在设定的时间(5秒)后显示标签
-(IBAction)start{
Desc.text = @"Text appears";
[self performSelector:@selector(delay) withObject:nil afterDelay:5.0];
}
-(void)delay{
Desc2.text = @"Text to appear in 5 seconds";
[self performSelector:@selector(delayA) withObject:nil afterDelay:5.0];
}
至于我想要做的下一行代码是,在预定的时间间隔之后,我会尝试让Button在5秒内出现,而不是标签。
有人可以帮忙吗?
答案 0 :(得分:0)
UIButton *btn = [UIButton alloc] initWithFrame:[Desc2 frame]];
[btn setTitle: [Desc2 text] forState:UIControlStateNormal];
[self.view addSubview:btn];
此代码段代码创建了一个UIButton
,其中包含了Desc2 UILabel
,并使用Desc2设置了按钮的标题。
您可以将其放在delayA方法中。
答案 1 :(得分:0)
-(void)delayA{
UIButton *button = [[UIButton alloc] init];
button.frame = CGRectMake(x, y, width, height); //add the parameters
[self.view addSubview:button];
}
希望它有所帮助。快乐的编码:)
答案 2 :(得分:0)
您可以使用以下内容:
[NSTimer scheduledTimerWithTimeInterval:target:selector:userInfo:repeats:]
答案 3 :(得分:0)
试试这个,
NSTimer *aTimer = [NSTimer timerWithTimeInterval:(5.0) target:self selector:@selector(timerFired:) userInfo:nil repeats:YES];
NSRunLoop *runner = [NSRunLoop currentRunLoop];
[runner addTimer:aTimer forMode: NSDefaultRunLoopMode];
并设置您要在
中执行的操作-(void)timerFired:(NSTimer *) theTimer
{
}
答案 4 :(得分:0)
如果您只尝试显示和隐藏按钮,请使用alpha属性。
// show button
[self.yourButton setAlpha: 1]
// hide button
[self.yourButton setAlpha: 0];
答案 5 :(得分:0)
首先必须隐藏您的UIButton,例如您的按钮名称是btn1然后在viewDidLoad:
方法中编写此代码
- (void)viewDidLoad
{
btn1.hidden = YES;
}
-(IBAction)start{
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:5.0
target:self
selector:@selector(targetMethod:)
userInfo:nil
repeats:YES];
}
-(IBAction)targetMethod:(id)sender{
btn1.hidden = NO;
}
使用此代码您可以在xib上拖放按钮,并将名称命名为btn1或者您希望...
我希望,这个答案对你有帮助..
:)