@MustBeDocumented
@Retention(value = AnnotationRetention.BINARY)
@Target(allowedTargets = [AnnotationTarget.FUNCTIONAnnotationTarget.PROPERTY_GETTERAnnotationTarget.PROPERTY_SETTERAnnotationTarget.CONSTRUCTORAnnotationTarget.ANNOTATION_CLASSAnnotationTarget.CLASSAnnotationTarget.VALUE_PARAMETER])
public annotation UiThread

Denotes that the annotated method or constructor should only be called on the UI thread. If the annotated element is a class, then all methods in the class should be called on the UI thread.

Example:

@UiThread
public
abstract void setText(@NonNull String text) { ... }

Note: Ordinarily, an app's UI thread is also the main thread. However, under special circumstances, an app's UI thread might not be its main thread; for more information, see Thread annotations.

Summary

Public constructors

Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2025-07-17 UTC.