千家信息网

ios如何实现倒计时器

发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,这篇文章给大家分享的是有关ios如何实现倒计时器的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。此倒计时器的效果如下:用过设置UIDatePicker的时间作为剩余时间,点击
千家信息网最后更新 2024年11月24日ios如何实现倒计时器

这篇文章给大家分享的是有关ios如何实现倒计时器的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

此倒计时器的效果如下:

用过设置UIDatePicker的时间作为剩余时间,点击start按钮开始计时,UIdatePicker每隔60s修改一次剩余时间。

代码如下:

@implementation JoyViewController
NSTimer* timer;
NSInteger leftSeconds;

- (void)viewDidLoad
{
[super viewDidLoad];
//设置使用Count Down Timer模式
self.countDonwn.datePickerMode = UIDatePickerModeCountDownTime;
}

-(IBAction)clicked:(id)sender
{
//获取设置的剩余时间
leftSeconds = self.countDown.countDuration;
//禁用UIDatePicker控件
self.countDown.enabled = NO;
//禁用开始按钮
[sender setEnabled] = NO;
//初始化一个字符串,用来作为警告框的内容
NSString *message = [[NSString stringWithFormat:@"开始倒计时?您还剩下【%d】秒",leftSeconds];
//创建一个UIAlertView(警告框)
UIAlertView* alert = [[UIAlertView alloc]initWithTitle:@"开始倒计时?"
message:message
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alert show];
//启用定时器,每隔60s执行一次tickdown方法
timer = [NSTimer scheduledTimerWithTimeInterVal:60
targer:self selector:@selector(tickDown)
userInfo:nil repeates:YES];
}

- (void) tickDown
{
//将剩余时间减少60s
leftSeconds -= 60;
//修改UIDatePicker的剩余时间
self.countDown.countDownDuration = leftSeconds;
if(leftSeconds <= 0)//如果时间小于或者等于0,取消定时器
{
[timer invalidate];
//启用定时器和按钮
self.countDown.enabled = YES;
self.startBn.enabled = YES;
}
}
@end

感谢各位的阅读!关于"ios如何实现倒计时器"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0