例如,我想制作一个计时器,剩余的时间将显示在alertview中。每次Nstimer更新后,alertview中的数字将减1,当数字等于0时,它将自动消失。那么如何在代码中实现这一点。(swift)
答案 0 :(得分:0)
我不太了解,所以这里是Obj-C代码(我相信你可以很容易地转换为swift)。
@property (nonatomic, strong) UIAlertView* alertView;
@property (nonatomic) int remainingSeconds;
//...
self.remainingSeconds = 10;
NSString *msg = [NSString stringWithFormat:@"Something will happen in %d seconds", self.remainingSeconds];
self.alertView = [[UIAlertView alloc] initWithTitle:@"Some title"
message:msg
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitle:@"Ok"];
[self.alertView show];
以1秒的间隔安排计时器。
- (void)timerTick:(NSTimer *)timer
{
self.remainingSeconds--;
if (self.remainingSeconds == 0) {
//dismiss alertview
return;
}
NSString *msg = [NSString stringWithFormat:@"Something will happen in %d seconds", self.remainingSeconds];
[self.alertView setMessage:msg];
}
请注意,这是直接在StackOverflow编辑器中编写的快速代码,因此可能会出现一些语法错误。