效果如下:

ViewController.h

1 #import <UIKit/UIKit.h>
2
3 @interface ViewController : UIViewController
4 @property (strong, nonatomic) UIDatePicker *datePChoice;
5 @property (strong, nonatomic) NSTimer *timer;
6
7 @end

ViewController.m

 1 #import "ViewController.h"
 2
 3 @interface ViewController ()
 4 - (void)layoutUI;
 5 - (void)timerDidRun:(NSTimer *)sender;
 6 @end
 7
 8 @implementation ViewController
 9 #define timeInterval 60.0
10
11 - (void)viewDidLoad {
12     [super viewDidLoad];
13
14     [self layoutUI];
15 }
16
17 - (void)didReceiveMemoryWarning {
18     [super didReceiveMemoryWarning];
19     // Dispose of any resources that can be recreated.
20 }
21
22 - (void)viewWillDisappear:(BOOL)animated {
23     [super viewWillDisappear:animated];
24     //画面隐藏时,取消计数器
25     if ([_timer isValid]) {
26         [_timer invalidate];
27     }
28 }
29
30 - (void)layoutUI {
31     _datePChoice = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 0, 0, 0)];
32     CGPoint newPoint = self.view.center;
33     _datePChoice.center = newPoint;
34     _datePChoice.datePickerMode = UIDatePickerModeCountDownTimer;
35     //设置时间显示为1小时5分钟;即65分钟 = 65 * 60(s)
36     _datePChoice.countDownDuration = 65 * 60;
37     [self.view addSubview:_datePChoice];
38
39     //使用计数器;设置每隔timeInterval(60秒)循环调用一次
40     _timer = [NSTimer timerWithTimeInterval:8
41                                      target:self
42                                    selector:@selector(timerDidRun:)
43                                    userInfo:nil
44                                     repeats:YES]; //这里为了测试;更改timerWithTimeInterval:timeInterval为timerWithTimeInterval:8,即每隔8秒循环调用一次
45     NSRunLoop *runLoop = [NSRunLoop currentRunLoop];
46     [runLoop addTimer:_timer forMode:NSDefaultRunLoopMode];
47 }
48
49 - (void)timerDidRun:(NSTimer *)sender {
50     if (_datePChoice.countDownDuration > 0.0) {
51         _datePChoice.countDownDuration -= timeInterval;
52     } else {
53         //日期选择器时间倒计时为0时,取消计数器
54         if ([_timer isValid]) {
55             [_timer invalidate];
56         }
57     }
58 }
59
60 @end

转载于:https://www.cnblogs.com/huangjianwu/p/4579237.html

088实现自动倒计时功能相关推荐

  1. python控制相机自动拍照_微信小程序实现倒计时调用相机自动拍照功能

    这篇文章主要为大家详细介绍了微信小程序实现倒计时调用相机自动拍照功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了微信小程序定时拍照的具体代码,供大家参考,具体内容如下 在某 ...

  2. Android:安卓实现高考倒计时功能

    本人安卓菜鸟,因为学校有一个比赛,所以正在做一个面向高中生的APP. 今天就是来记录一下倒计时功能的实现. 一.我首先做了一个类似下拉框的效果,让用户自己选择自己的年级(高一/高二/高三),然后根据相 ...

  3. 小程序实现活动倒计时功能

    目录 需求分析 1 创建数据源 2 创建模型应用 3 创建自定义应用 4 倒计时功能开发 总结 需求分析 电商小程序中通常有这么一个场景,要开展一项促销活动,活动有截止日期.用户打开小程序的时候就可以 ...

  4. 华为30 岁以下员工占比 28%;SpaceX:欢迎“攻击”星链;高德地图宣布正式上线“红绿灯倒计时”功能 | EA周报...

    EA周报 2022年8月19日 每个星期7分钟,元宝带你喝一杯IT人的浓缩咖啡,了解天下事.掌握IT核心技术. 周报看点 1.华为研发费用占年收入 22.4%,30 岁以下员工占比 28% 2.腾讯二 ...

  5. Android listview item倒计时功能

    前段时间项目有个需求是需要在listview的item中做个60s倒计时功能,并且倒计时的时间由本地记录,无关服务端.网上找了一些demo,有倒计时的功能,但总有些问题,也无法满足需求,最后自己改进后 ...

  6. python 倒计时运行程序怎么关闭_如何让电脑自动倒计时关机?我Python拭魅战告诉你...

    在日常使用电脑的过程中,很多小伙伴都有让电脑按时自动关机的需求.通常而言,年夜家一般城市有几种选择. 假如哪一天,你女神问你,有没有什么按时关机的好体例,你怎么告诉她? 一.熟悉计算机操作的话,可以使 ...

  7. Handler之实现倒计时功能

    1.需求 1.1 实现目标 当后台传递一个时间戳时,与当前系统时间做时间差,并转换为时分秒,作为商品活动的倒计时: 如下图所示: 1.2 实现步骤 自定义View 1.实现倒计时功能,封装成方法: 2 ...

  8. php pdo 时间,php – 使用PDO执行时间记录查询 – 自动完成功能无效

    我正在尝试创建一个中间类,它将在数组中记录查询及其执行时间.一切都很好,它完美无缺.但是当我尝试访问中间类时,自动完成功能不起作用.如何让自动完成工作.我正在使用Netbeans. 中级类名是Mode ...

  9. 禁止windows系统的自动运行功能

    禁用Windows 系统的自动播放功能的方法:在运行中输入 gpedit.msc 后回车,打开组策略编辑器,依次点击:计算机配置->管理模板->系统->关闭自动播放->已启用- ...

最新文章

  1. 误删除的文件夹还能恢复吗?
  2. Linux 磁盘与文件系统管理
  3. CentOS7升级版本
  4. 常用工具类系列之DateUtil
  5. linux下面 r和 n的区别,【冷知识】关于/r与/n以及 /r/n 的区别总结
  6. Apache Kafka – KIP 32,33 Time Index
  7. php 获取来源域名方法,PHP获取域名方法
  8. 微信小程序使用腾讯地图
  9. Understand(代码分析工具)的安装与使用教程
  10. STM32F103C8T6红外遥控解码
  11. 【工具用法】Linux登录吉林大学校园网教程(以deepin为例)
  12. 红黑联盟十周年 汇编语言系列教程
  13. 74ls390设计任意进制计数器_《设计任意进制计数器》的实验报告
  14. YBC携手IZO打造创业家的摇篮
  15. poi操作word,写入一个图片,并且设置其大小,以及图片和base64之间的互相转换,以及表格内容替换和插入
  16. OpenFOAM多孔介质模型_DarcyForchheimer
  17. matlab获取2的整数次幂,如何快速判断正整数是2的N次幂
  18. php实现店铺装修,php 实现店铺装修2
  19. 全国大学生“高教杯”成图大赛——图错了如何修改
  20. 计算机视觉中的MAP的理解(mean average precision)

热门文章

  1. 三个变量互换值_02-Python基础知识学习-------Python变量
  2. python降温了吗_为“Python将纳入高考”降温
  3. 【考试战报】ORACLE OCP 19C考试通过
  4. Knative 暂时不会捐给任何基金会 | 云原生生态周报 Vol. 22
  5. 独家解密:阿里是如何应对超大规模集群资源管理挑战的?
  6. html页面跳转_HTTP响应协议状态码以及跳转问题
  7. mysql创建数据库时候同时创建表空间_MySQL 创建InnoDB表空间_编程学问网
  8. ubuntu20分区_「图」Canonical希望Ubuntu 20.04 LTS Server Installer更快更舒适
  9. java 9对象_java(9)类和对象
  10. VS编辑器 设置智能提示