口袋优选

WLButtonCountdownManager.h 1.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. //
  2. // WLButtonCountdownManager.h
  3. // WLButtonCountingDownDemo
  4. //
  5. // Created by wayne on 16/1/14.
  6. // Copyright © 2016年 ZHWAYNE. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. @class WLCountdownTask;
  10. NS_ASSUME_NONNULL_BEGIN
  11. @interface WLButtonCountdownManager : NSObject
  12. /**
  13. * 获取单例
  14. *
  15. * @return 该类的唯一实例
  16. */
  17. + (instancetype)defaultManager;
  18. /**
  19. * 开始倒计时,如果倒计时管理器里具有相同的key,则直接开始回调。
  20. *
  21. * @param aKey 任务key,用于标示唯一性
  22. * @param timeInterval 倒计时总时间,受操作系统后台时间限制,倒计时时间规定不得大于 120 秒.
  23. * @param countingDown 倒计时时,会多次回调,提供当前秒数
  24. * @param finished 倒计时结束时调用,提供当前秒数,值恒为 0
  25. */
  26. - (void)scheduledCountDownWithKey:(NSString *)aKey
  27. timeInterval:(NSTimeInterval)timeInterval
  28. countingDown:(nullable void (^)(NSTimeInterval leftTimeInterval))countingDown
  29. finished:(nullable void (^)(__unused NSTimeInterval finalTimeInterval))finished;
  30. /**
  31. * 查询倒计时任务是否存在
  32. *
  33. * @param akey 任务key
  34. * @param task 任务
  35. * @return YES - 存在, NO - 不存在
  36. */
  37. - (BOOL)countdownTaskExistWithKey:(NSString *)akey task:(WLCountdownTask * _Nullable * _Nullable)task;
  38. @end
  39. NS_ASSUME_NONNULL_END