Interval

open class Interval(end: Long, period: Long, unit: TimeUnit, start: Long, initialDelay: Long) : Serializable

轮循器

操作

  1. 开启: 只有在闲置状态下才可以开始

  2. 停止

  3. 暂停

  4. 继续

  5. 重置: 重置不会导致轮循器停止

  6. 开关: 开启|暂停切换

  7. 生命周期

回调: 允许多次订阅同一个轮循器

  1. 每个事件

  2. 停止或者结束

Parameters

end

结束值

period

计时器间隔

unit

计时器单位

initialDelay

第一次事件的间隔时间, 默认0

start

开始值, 当start]比end值大, 且end不等于-1时, 即为倒计时, 反之正计时

Constructors

Interval
Link copied to clipboard
fun Interval(period: Long, unit: TimeUnit, initialDelay: Long = 0)
Interval
Link copied to clipboard
fun Interval(end: Long, period: Long, unit: TimeUnit, start: Long = 0, initialDelay: Long = 0)
结束值

Functions

finish
Link copied to clipboard
fun finish(block: (Long) -> Unit): Interval
轮循器完成时回调该函数
life
Link copied to clipboard
fun life(lifecycleOwner: LifecycleOwner, lifeEvent: Lifecycle.Event = Lifecycle.Event.ON_STOP): Interval
绑定生命周期, 在指定生命周期发生时取消轮循器
pause
Link copied to clipboard
fun pause()
暂停
reset
Link copied to clipboard
fun reset()
重置
resume
Link copied to clipboard
fun resume()
继续 要求轮循器为暂停状态IntervalStatus.STATE_PAUSE, 否则无效
start
Link copied to clipboard
fun start()
开始
stop
Link copied to clipboard
fun stop()
停止
subscribe
Link copied to clipboard
fun subscribe(block: (Long) -> Unit): Interval
订阅轮循器 每次轮循器计时都会调用该回调函数 轮循器完成时会同时触发回调blockfinish
switch
Link copied to clipboard
fun switch()
切换轮循器开始或结束

Properties

count
Link copied to clipboard
var count: Long
轮循器的计数
end
Link copied to clipboard
var end: Long
结束值
state
Link copied to clipboard
var state: IntervalStatus
轮循器当前状态