# Class UITimer

java.lang.Object
com.codename1.ui.util.UITimer

public class UITimer extends Object
Simple timer callback that is invoked on the CodenameOne EDT thread rather than on a separate thread. Notice that the accuracy of this timer is very low! A timer must be linked to a specific form

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `UITimer()`
  This constructor is useful when deriving this class to implement a timer.
  ``
  `UITimer(Runnable r)`
  Constructor that accepts a runnable to invoke on timer elapse

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `cancel()`
  Stops executing the timer
  `void`
  `schedule(int timeMillis, boolean repeat, Form bound)`
  Binds the timer to start at the given schedule
  `void`
  `schedule(int timeMillis, boolean repeat, TopLevelContainer bound)`
  Schedules this timer against any top level; see `#timer(int, boolean, TopLevelContainer, Runnable)`.
  `static UITimer`
  `timer(int timeMillis, boolean repeat, Form parent, Runnable r)`
  Convenience method to schedule a UITimer more easily
  `static UITimer`
  `timer(int timeMillis, boolean repeat, TopLevelContainer parent, Runnable r)`
  Schedules a timer bound to any top level, so a component inside a `Window` can have one.
  `static UITimer`
  `timer(int timeMillis, boolean repeat, Runnable r)`
  Convenience method to schedule a UITimer more easily on the current form

  ### Methods inherited from class Object

  `clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### UITimer

    protected UITimer()
    This constructor is useful when deriving this class to implement a timer.

  - ### UITimer

    public UITimer(Runnable r)

    Constructor that accepts a runnable to invoke on timer elapse

    ###### Parameters

    - `r`: runnable instance

- ## Method Details

  - ### timer

    public static UITimer timer(int timeMillis, boolean repeat, Form parent, Runnable r)

    Convenience method to schedule a UITimer more easily

    ###### Parameters

    - `timeMillis`: the time from now in milliseconds

    - `repeat`: whether the timer repeats

    - `parent`: the form to which the timer is bound

    - `r`: callback when the timer elapses

    ###### Returns

    the timer instance

  - ### timer

    public static UITimer timer(int timeMillis, boolean repeat, TopLevelContainer parent, Runnable r)

    Schedules a timer bound to any top level, so a component inside a `Window` can have one. `Component#getComponentForm()` is null there, and a port that bound its timer to the form silently ran no timer at all inside a window.

    ###### Parameters

    - `timeMillis`: the timer interval in milliseconds

    - `repeat`: whether the timer repeats

    - `parent`: the top level the timer is bound to

    - `r`: the task to run

    ###### Returns

    the scheduled timer

  - ### timer

    public static UITimer timer(int timeMillis, boolean repeat, Runnable r)

    Convenience method to schedule a UITimer more easily on the current form

    ###### Parameters

    - `timeMillis`: the time from now in milliseconds

    - `repeat`: whether the timer repeats

    - `r`: callback when the timer elapses

    ###### Returns

    the timer instance

  - ### schedule

    public void schedule(int timeMillis, boolean repeat, Form bound)

    Binds the timer to start at the given schedule

    ###### Parameters

    - `timeMillis`: the time from now in milliseconds

    - `repeat`: whether the timer repeats

    - `bound`: the form to which the timer is bound

  - ### schedule

    public void schedule(int timeMillis, boolean repeat, TopLevelContainer bound)

    Schedules this timer against any top level; see `#timer(int, boolean, TopLevelContainer, Runnable)`.

    ###### Parameters

    - `timeMillis`: the timer interval in milliseconds

    - `repeat`: whether the timer repeats

    - `bound`: the top level the timer is bound to

  - ### cancel

    public void cancel()
    Stops executing the timer