androidx.activity
Dependency
Groovy
dependencies { implementation "androidx.activity:activity-ktx:1.11.0" }
Kotlin
dependencies { implementation("androidx.activity:activity-ktx:1.11.0") }
Extension functions
For OnBackPressedDispatcher
| OnBackPressedCallback | 
            OnBackPressedDispatcher.addCallback(owner: LifecycleOwner? = null, enabled: Boolean = true, onBackPressed: OnBackPressedCallback.() -> Unit)
            Create and add a new OnBackPressedCallback that calls onBackPressed in OnBackPressedCallback.handleOnBackPressed.  | 
        
For ComponentActivity
| Lazy<VM> | 
            ComponentActivity.viewModels(noinline factoryProducer: () -> ViewModelProvider.Factory = null)
            Returns a Lazy delegate to access the ComponentActivity's ViewModel, if factoryProducer is specified then ViewModelProvider.Factory returned by it will be used to create ViewModel first time.  | 
        
androidx.benchmark
Dependency
Groovy
dependencies { implementation "androidx.benchmark:benchmark-junit4:1.4.1" }
Kotlin
dependencies { implementation("androidx.benchmark:benchmark-junit4:1.4.1") }
Top-level functions
| Unit | 
            beginTraceSection(sectionName: String)
            
           | 
        
| Unit | 
            endTraceSection()
            
           | 
        
androidx.benchmark.junit4
Dependency
Groovy
dependencies { implementation "androidx.benchmark:benchmark-junit4:1.4.1" }
Kotlin
dependencies { implementation("androidx.benchmark:benchmark-junit4:1.4.1") }
Extension functions
For BenchmarkRule
| Unit | 
            BenchmarkRule.measureRepeated(crossinline block: BenchmarkRule.Scope.() -> Unit)
            Benchmark a block of code.  | 
        
androidx.collection
Dependency
Groovy
dependencies { implementation "androidx.collection:collection-ktx:1.5.0" }
Kotlin
dependencies { implementation("androidx.collection:collection-ktx:1.5.0") }
Extension functions
For LongSparseArray
| operator Boolean | 
            LongSparseArray<T>.contains(key: Long)
            Returns true if the collection contains key.  | 
        
| Unit | 
            LongSparseArray<T>.forEach(action: (key: Long, value: T) -> Unit)
            Performs the given action for each key/value entry.  | 
        
| T | 
            LongSparseArray<T>.getOrDefault(key: Long, defaultValue: T)
            Return the value corresponding to key, or defaultValue when not present.  | 
        
| T | 
            LongSparseArray<T>.getOrElse(key: Long, defaultValue: () -> T)
            Return the value corresponding to key, or from defaultValue when not present.  | 
        
| Boolean | 
            LongSparseArray<T>.isNotEmpty()
            Return true when the collection contains elements.  | 
        
| LongIterator | 
            LongSparseArray<T>.keyIterator()
            Return an iterator over the collection's keys.  | 
        
| operator LongSparseArray<T> | 
            LongSparseArray<T>.plus(other: LongSparseArray<T>)
            Creates a new collection by adding or replacing entries from other.  | 
        
| Boolean | 
            LongSparseArray<T>.remove(key: Long, value: T)
            
           | 
        
| operator Unit | 
            LongSparseArray<T>.set(key: Long, value: T)
            Allows the use of the index operator for storing values in the collection.  | 
        
| Iterator<T> | 
            LongSparseArray<T>.valueIterator()
            Return an iterator over the collection's values.  | 
        
For SparseArrayCompat
| operator Boolean | 
            SparseArrayCompat<T>.contains(key: Int)
            Returns true if the collection contains key.  | 
        
| Unit | 
            SparseArrayCompat<T>.forEach(action: (key: Int, value: T) -> Unit)
            Performs the given action for each key/value entry.  | 
        
| T | 
            SparseArrayCompat<T>.getOrDefault(key: Int, defaultValue: T)
            Return the value corresponding to key, or defaultValue when not present.  | 
        
| T | 
            SparseArrayCompat<T>.getOrElse(key: Int, defaultValue: () -> T)
            Return the value corresponding to key, or from defaultValue when not present.  | 
        
| Boolean | 
            SparseArrayCompat<T>.isNotEmpty()
            Return true when the collection contains elements.  | 
        
| IntIterator | 
            SparseArrayCompat<T>.keyIterator()
            Return an iterator over the collection's keys.  | 
        
| operator SparseArrayCompat<T> | 
            SparseArrayCompat<T>.plus(other: SparseArrayCompat<T>)
            Creates a new collection by adding or replacing entries from other.  | 
        
| Boolean | 
            SparseArrayCompat<T>.remove(key: Int, value: T)
            
           | 
        
| operator Unit | 
            SparseArrayCompat<T>.set(key: Int, value: T)
            Allows the use of the index operator for storing values in the collection.  | 
        
| Iterator<T> | 
            SparseArrayCompat<T>.valueIterator()
            Return an iterator over the collection's values.  | 
        
Extension properties
For LongSparseArray
| Int | 
            LongSparseArray<T>.size()
            Returns the number of key/value pairs in the collection.  | 
        
For SparseArrayCompat
| Int | 
            SparseArrayCompat<T>.size()
            Returns the number of key/value pairs in the collection.  | 
        
Top-level functions
| ArrayMap<K, V> | 
            arrayMapOf()
            Returns an empty new ArrayMap.  | 
        
| ArrayMap<K, V> | 
            arrayMapOf(vararg pairs: Pair<K, V>)
            Returns a new ArrayMap with the specified contents, given as a list of pairs where the first component is the key and the second component is the value.  | 
        
| ArraySet<T> | 
            arraySetOf()
            Returns an empty new ArraySet.  | 
        
| ArraySet<T> | 
            arraySetOf(vararg values: T)
            Returns a new ArraySet with the specified contents.  | 
        
| LruCache<K, V> | 
            lruCache(maxSize: Int, crossinline sizeOf: (key: K, value: V) -> Int = { _, _ -> 1 }, crossinline create: (key: K) -> V? = { null as V? }, crossinline onEntryRemoved: (evicted: Boolean, key: K, oldValue: V, newValue: V?) -> Unit = { _, _, _, _ -> })
            Creates an LruCache with the given parameters.  | 
        
androidx.core.animation
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.animation.Animator
| AnimatorListener | 
            Animator.addListener(crossinline onEnd: (animator: Animator) -> Unit = {}, crossinline onStart: (animator: Animator) -> Unit = {}, crossinline onCancel: (animator: Animator) -> Unit = {}, crossinline onRepeat: (animator: Animator) -> Unit = {})
            Add a listener to this Animator using the provided actions.  | 
        
| AnimatorPauseListener | 
            Animator.addPauseListener(crossinline onResume: (animator: Animator) -> Unit = {}, crossinline onPause: (animator: Animator) -> Unit = {})
            Add a pause and resume listener to this Animator using the provided actions.  | 
        
| AnimatorListener | 
            Animator.doOnCancel(crossinline action: (animator: Animator) -> Unit)
            Add an action which will be invoked when the animation has been cancelled.  | 
        
| AnimatorListener | 
            Animator.doOnEnd(crossinline action: (animator: Animator) -> Unit)
            Add an action which will be invoked when the animation has ended.  | 
        
| AnimatorPauseListener | 
            Animator.doOnPause(crossinline action: (animator: Animator) -> Unit)
            Add an action which will be invoked when the animation has been paused.  | 
        
| AnimatorListener | 
            Animator.doOnRepeat(crossinline action: (animator: Animator) -> Unit)
            Add an action which will be invoked when the animation has repeated.  | 
        
| AnimatorPauseListener | 
            Animator.doOnResume(crossinline action: (animator: Animator) -> Unit)
            Add an action which will be invoked when the animation has resumed after a pause.  | 
        
| AnimatorListener | 
            Animator.doOnStart(crossinline action: (animator: Animator) -> Unit)
            Add an action which will be invoked when the animation has started.  | 
        
androidx.core.content
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.content.Context
| T? | 
            Context.getSystemService()
            Return the handle to a system-level service by class.  | 
        
| Unit | 
            Context.withStyledAttributes(set: AttributeSet? = null, attrs: IntArray, @AttrRes defStyleAttr: Int = 0, @StyleRes defStyleRes: Int = 0, block: TypedArray.() -> Unit)
            Executes block on a TypedArray receiver.  | 
        
| Unit | 
            Context.withStyledAttributes(@StyleRes resourceId: Int, attrs: IntArray, block: TypedArray.() -> Unit)
            Executes block on a TypedArray receiver.  | 
        
For android.content.SharedPreferences
| Unit | 
            SharedPreferences.edit(: Boolean = false, : Editor.() -> Unit)
            Allows editing of this preference instance with a call to apply or commit to persist the changes.  | 
        
Top-level functions
| ContentValues | 
            contentValuesOf(vararg pairs: Pair<String, Any?>)
            Returns a new ContentValues with the given key/value pairs as elements.  | 
        
androidx.core.content.res
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.content.res.TypedArray
| Boolean | 
            TypedArray.getBooleanOrThrow(@StyleableRes index: Int)
            Retrieve the boolean value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Int | 
            TypedArray.getColorOrThrow(@StyleableRes index: Int)
            Retrieve the color value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| ColorStateList | 
            TypedArray.getColorStateListOrThrow(@StyleableRes index: Int)
            Retrieve the color state list value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Float | 
            TypedArray.getDimensionOrThrow(@StyleableRes index: Int)
            Retrieve the dimension value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Int | 
            TypedArray.getDimensionPixelOffsetOrThrow(@StyleableRes index: Int)
            Retrieve the dimension pixel offset value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Int | 
            TypedArray.getDimensionPixelSizeOrThrow(@StyleableRes index: Int)
            Retrieve the dimension pixel size value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Drawable | 
            TypedArray.getDrawableOrThrow(@StyleableRes index: Int)
            Retrieve the drawable value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Float | 
            TypedArray.getFloatOrThrow(@StyleableRes index: Int)
            Retrieve the float value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Typeface | 
            TypedArray.getFontOrThrow(@StyleableRes index: Int)
            Retrieve the font value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Int | 
            TypedArray.getIntOrThrow(@StyleableRes index: Int)
            Retrieve the integer value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Int | 
            TypedArray.getIntegerOrThrow(@StyleableRes index: Int)
            Retrieve the integer value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Int | 
            TypedArray.getResourceIdOrThrow(@StyleableRes index: Int)
            Retrieves the resource identifier for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| String | 
            TypedArray.getStringOrThrow(@StyleableRes index: Int)
            Retrieve the string value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| Array<CharSequence> | 
            TypedArray.getTextArrayOrThrow(@StyleableRes index: Int)
            Retrieve the text array value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| CharSequence | 
            TypedArray.getTextOrThrow(@StyleableRes index: Int)
            Retrieve the text value for the attribute at index or throws IllegalArgumentException if not defined.  | 
        
| R | 
            TypedArray.use(block: (TypedArray) -> R)
            Executes the given block function on this TypedArray and then recycles it.  | 
        
androidx.core.database
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.database.Cursor
| ByteArray? | 
            Cursor.getBlobOrNull(index: Int)
            Returns the value of the requested column as a nullable byte array.  | 
        
| Double? | 
            Cursor.getDoubleOrNull(index: Int)
            Returns the value of the requested column as a nullable double.  | 
        
| Float? | 
            Cursor.getFloatOrNull(index: Int)
            Returns the value of the requested column as a nullable float.  | 
        
| Int? | 
            Cursor.getIntOrNull(index: Int)
            Returns the value of the requested column as a nullable integer.  | 
        
| Long? | 
            Cursor.getLongOrNull(index: Int)
            Returns the value of the requested column as a nullable long.  | 
        
| Short? | 
            Cursor.getShortOrNull(index: Int)
            Returns the value of the requested column as a nullable short.  | 
        
| String? | 
            Cursor.getStringOrNull(index: Int)
            Returns the value of the requested column as a nullable string.  | 
        
androidx.core.database.sqlite
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.database.sqlite.SQLiteDatabase
| T | 
            SQLiteDatabase.transaction(exclusive: Boolean = true, body: SQLiteDatabase.() -> T)
            Run body in a transaction marking it as successful if it completes without exception.  | 
        
androidx.core.graphics
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.graphics.Bitmap
| Bitmap | 
            Bitmap.applyCanvas(block: Canvas.() -> Unit)
            Creates a new Canvas to draw on this bitmap and executes the specified block on the newly created canvas.  | 
        
| operator Boolean | 
            Bitmap.contains(p: Point)
            Returns true if the specified point is inside the bitmap.  | 
        
| operator Boolean | 
            Bitmap.contains(p: PointF)
            Returns true if the specified point is inside the bitmap.  | 
        
| operator Int | 
            Bitmap.get(x: Int, y: Int)
            Returns the value of the pixel at the specified location.  | 
        
| Bitmap | 
            Bitmap.scale(width: Int, height: Int, filter: Boolean = true)
            Creates a new bitmap, scaled from this bitmap, when possible.  | 
        
| operator Unit | 
            Bitmap.set(x: Int, y: Int, color: Int)
            Writes the specified color int into the bitmap
(assuming it is mutable) at the specified   | 
        
For android.graphics.Canvas
For android.graphics.Color
| operator Float | 
            Color.component1()
            Returns the first component of the color.  | 
        
| operator Float | 
            Color.component2()
            Returns the second component of the color.  | 
        
| operator Float | 
            Color.component3()
            Returns the third component of the color.  | 
        
| operator Float | 
            Color.component4()
            Returns the fourth component of the color.  | 
        
| infix Color! | 
            Color.convertTo(colorSpace: Named)
            Converts the color receiver to a color in the specified color space.  | 
        
| infix Color! | 
            Color.convertTo(colorSpace: ColorSpace)
            Converts the color receiver to a color in the specified color space.  | 
        
| operator Color | 
            Color.plus(c: Color)
            Composites two translucent colors together.  | 
        
For android.graphics.ImageDecoder.Source
| Bitmap | 
            Source.decodeBitmap(crossinline action: ImageDecoder.(info: ImageInfo, source: Source) -> Unit)
            Create a Bitmap from a Source  | 
        
| Drawable | 
            Source.decodeDrawable(crossinline action: ImageDecoder.(info: ImageInfo, source: Source) -> Unit)
            Create a Drawable from a Source  | 
        
For android.graphics.Matrix
| operator Matrix | 
            Matrix.times(m: Matrix)
            Multiplies this Matrix by another matrix and returns the result as a new matrix.  | 
        
| FloatArray | 
            Matrix.values()
            Returns the 9 values of this Matrix as a new array of floats.  | 
        
For android.graphics.Paint
| Boolean | 
            Paint.setBlendMode(blendModeCompat: BlendModeCompat?)
            Convenience method to configure the BlendMode of a Paint in a backward compatible way.  | 
        
For android.graphics.Path
| infix Path | 
            Path.and(p: Path)
            Returns the intersection of two paths as a new Path.  | 
        
| Iterable<PathSegment> | 
            Path.flatten(error: Float = 0.5f)
            Flattens (or approximate) the Path with a series of line segments.  | 
        
| operator Path | 
            Path.minus(p: Path)
            Returns the difference of two paths as a new Path.  | 
        
| infix Path | 
            Path.or(p: Path)
            Returns the union of two paths as a new Path.  | 
        
| operator Path | 
            Path.plus(p: Path)
            Returns the union of two paths as a new Path.  | 
        
| infix Path | 
            Path.xor(p: Path)
            Returns the union minus the intersection of two paths as a new Path.  | 
        
For android.graphics.Picture
| Picture | 
            Picture.record(width: Int, height: Int, block: Canvas.() -> Unit)
            Creates a new Canvas to record commands in this Picture, executes the specified block on the newly created canvas and returns this Picture.  | 
        
For android.graphics.Point
| operator Int | 
            Point.component1()
            Returns the x coordinate of this point.  | 
        
| operator Int | 
            Point.component2()
            Returns the y coordinate of this point.  | 
        
| operator Point | 
            Point.minus(p: Point)
            Offsets this point by the negation of the specified point and returns the result as a new point.  | 
        
| operator Point | 
            Point.minus(xy: Int)
            Offsets this point by the negation of the specified amount on both X and Y axis and returns the result as a new point.  | 
        
| operator Point | 
            Point.plus(p: Point)
            Offsets this point by the specified point and returns the result as a new point.  | 
        
| operator Point | 
            Point.plus(xy: Int)
            Offsets this point by the specified amount on both X and Y axis and returns the result as a new point.  | 
        
| PointF | 
            Point.toPointF()
            Returns a PointF representation of this point.  | 
        
| operator Point | 
            Point.unaryMinus()
            Returns a new point representing the negation of this point.  | 
        
For android.graphics.PointF
| operator Float | 
            PointF.component1()
            Returns the x coordinate of this point.  | 
        
| operator Float | 
            PointF.component2()
            Returns the y coordinate of this point.  | 
        
| operator PointF | 
            PointF.minus(p: PointF)
            Offsets this point by the negation of the specified point and returns the result as a new point.  | 
        
| operator PointF | 
            PointF.minus(xy: Float)
            Offsets this point by the negation of the specified amount on both X and Y axis and returns the result as a new point.  | 
        
| operator PointF | 
            PointF.plus(p: PointF)
            Offsets this point by the specified point and returns the result as a new point.  | 
        
| operator PointF | 
            PointF.plus(xy: Float)
            Offsets this point by the specified amount on both X and Y axis and returns the result as a new point.  | 
        
| Point | 
            PointF.toPoint()
            Returns a Point representation of this point.  | 
        
| operator PointF | 
            PointF.unaryMinus()
            Returns a new point representing the negation of this point.  | 
        
For android.graphics.PorterDuff.Mode
| PorterDuffColorFilter | 
            Mode.toColorFilter(color: Int)
            Creates a new PorterDuffColorFilter that uses this PorterDuff.Mode as the alpha compositing or blending mode, and the specified color.  | 
        
| PorterDuffXfermode | 
            Mode.toXfermode()
            Creates a new PorterDuffXfermode that uses this PorterDuff.Mode as the alpha compositing or blending mode.  | 
        
For android.graphics.Rect
| infix Rect | 
            Rect.and(r: Rect)
            Returns the intersection of two rectangles as a new rectangle.  | 
        
| operator Int | 
            Rect.component1()
            Returns "left", the first component of the rectangle.  | 
        
| operator Int | 
            Rect.component2()
            Returns "top", the second component of the rectangle.  | 
        
| operator Int | 
            Rect.component3()
            Returns "right", the third component of the rectangle.  | 
        
| operator Int | 
            Rect.component4()
            Returns "bottom", the fourth component of the rectangle.  | 
        
| operator Boolean | 
            Rect.contains(p: Point)
            Returns true if the specified point is inside the rectangle.  | 
        
| operator Region | 
            Rect.minus(r: Rect)
            Returns the difference of this rectangle and the specified rectangle as a new region.  | 
        
| operator Rect | 
            Rect.minus(xy: Int)
            Returns a new rectangle representing this rectangle offset by the negation of the specified amount on both X and Y axis.  | 
        
| operator Rect | 
            Rect.minus(xy: Point)
            Returns a new rectangle representing this rectangle offset by the negation of the specified point.  | 
        
| infix Rect | 
            Rect.or(r: Rect)
            Returns the union of two rectangles as a new rectangle.  | 
        
| operator Rect | 
            Rect.plus(r: Rect)
            Performs the union of this rectangle and the specified rectangle and returns the result as a new rectangle.  | 
        
| operator Rect | 
            Rect.plus(xy: Int)
            Returns a new rectangle representing this rectangle offset by the specified amount on both X and Y axis.  | 
        
| operator Rect | 
            Rect.plus(xy: Point)
            Returns a new rectangle representing this rectangle offset by the specified point.  | 
        
| operator Rect | 
            Rect.times(factor: Int)
            Returns a new rectangle representing this rectangle's components each scaled by factor.  | 
        
| RectF | 
            Rect.toRectF()
            Returns a RectF representation of this rectangle.  | 
        
| Region | 
            Rect.toRegion()
            Returns a Region representation of this rectangle.  | 
        
| infix Region | 
            Rect.xor(r: Rect)
            Returns the union minus the intersection of two rectangles as a new region.  | 
        
For android.graphics.RectF
| infix RectF | 
            RectF.and(r: RectF)
            Returns the intersection of two rectangles as a new rectangle.  | 
        
| operator Float | 
            RectF.component1()
            Returns "left", the first component of the rectangle.  | 
        
| operator Float | 
            RectF.component2()
            Returns "top", the second component of the rectangle.  | 
        
| operator Float | 
            RectF.component3()
            Returns "right", the third component of the rectangle.  | 
        
| operator Float | 
            RectF.component4()
            Returns "bottom", the fourth component of the rectangle.  | 
        
| operator Boolean | 
            RectF.contains(p: PointF)
            Returns true if the specified point is inside the rectangle.  | 
        
| operator Region | 
            RectF.minus(r: RectF)
            Returns the difference of this rectangle and the specified rectangle as a new region.  | 
        
| operator RectF | 
            RectF.minus(xy: Float)
            Returns a new rectangle representing this rectangle offset by the negation of the specified amount on both X and Y axis.  | 
        
| operator RectF | 
            RectF.minus(xy: PointF)
            Returns a new rectangle representing this rectangle offset by the negation of the specified point.  | 
        
| infix RectF | 
            RectF.or(r: RectF)
            Returns the union of two rectangles as a new rectangle.  | 
        
| operator RectF | 
            RectF.plus(r: RectF)
            Performs the union of this rectangle and the specified rectangle and returns the result as a new rectangle.  | 
        
| operator RectF | 
            RectF.plus(xy: Float)
            Returns a new rectangle representing this rectangle offset by the specified amount on both X and Y axis.  | 
        
| operator RectF | 
            RectF.plus(xy: PointF)
            Returns a new rectangle representing this rectangle offset by the specified point.  | 
        
| operator RectF | 
            RectF.times(factor: Int)
            Returns a new rectangle representing this rectangle's components each scaled by factor.  | 
        
| operator RectF | 
            RectF.times(factor: Float)
            Returns a new rectangle representing this rectangle's components each scaled by factor.  | 
        
| Rect | 
            RectF.toRect()
            Returns a Rect representation of this rectangle.  | 
        
| Region | 
            RectF.toRegion()
            Returns a Region representation of this rectangle.  | 
        
| RectF | 
            RectF.transform(m: Matrix)
            Transform this rectangle in place using the supplied Matrix and returns this rectangle.  | 
        
| infix Region | 
            RectF.xor(r: RectF)
            Returns the union minus the intersection of two rectangles as a new region.  | 
        
For android.graphics.Region
| infix Region | 
            Region.and(r: Rect)
            Return the intersection of this region and the specified Rect as a new region.  | 
        
| infix Region | 
            Region.and(r: Region)
            Return the intersection of this region and the specified region as a new region.  | 
        
| operator Boolean | 
            Region.contains(p: Point)
            Return true if the region contains the specified Point.  | 
        
| Unit | 
            Region.forEach(action: (rect: Rect) -> Unit)
            Performs the given action on each rect in this region.  | 
        
| operator Iterator<Rect> | 
            Region.iterator()
            Returns an Iterator over the rects in this region.  | 
        
| operator Region | 
            Region.minus(r: Rect)
            Return the difference of this region and the specified Rect as a new region.  | 
        
| operator Region | 
            Region.minus(r: Region)
            Return the difference of this region and the specified region as a new region.  | 
        
| operator Region | 
            Region.not()
            Returns the negation of this region as a new region.  | 
        
| infix Region | 
            Region.or(r: Rect)
            Return the union of this region and the specified Rect as a new region.  | 
        
| infix Region | 
            Region.or(r: Region)
            Return the union of this region and the specified region as a new region.  | 
        
| operator Region | 
            Region.plus(r: Rect)
            Return the union of this region and the specified Rect as a new region.  | 
        
| operator Region | 
            Region.plus(r: Region)
            Return the union of this region and the specified region as a new region.  | 
        
| operator Region | 
            Region.unaryMinus()
            Returns the negation of this region as a new region.  | 
        
| infix Region | 
            Region.xor(r: Rect)
            Return the union minus the intersection of this region and the specified Rect as a new region.  | 
        
| infix Region | 
            Region.xor(r: Region)
            Return the union minus the intersection of this region and the specified region as a new region.  | 
        
For android.graphics.Shader
| Unit | 
            Shader.transform(block: Matrix.() -> Unit)
            Wrap the specified block in calls to Shader.getLocalMatrix and Shader.setLocalMatrix.  | 
        
For kotlin.Int
| operator Int | 
            Int.component1()
            Return the alpha component of a color int.  | 
        
| operator Int | 
            Int.component2()
            Return the red component of a color int.  | 
        
| operator Int | 
            Int.component3()
            Return the green component of a color int.  | 
        
| operator Int | 
            Int.component4()
            Return the blue component of a color int.  | 
        
| infix Long | 
            Int.convertTo(colorSpace: Named)
            Converts the color int receiver to a color long in the specified color space.  | 
        
| infix Long | 
            Int.convertTo(colorSpace: ColorSpace)
            Converts the color int receiver to a color long in the specified color space.  | 
        
| Color | 
            Int.toColor()
            Creates a new Color instance from a color int.  | 
        
| Long | 
            Int.toColorLong()
            Converts the specified ARGB color int to an RGBA color long in the sRGB color space.  | 
        
For kotlin.Long
| operator Float | 
            Long.component1()
            Returns the first component of the color.  | 
        
| operator Float | 
            Long.component2()
            Returns the second component of the color.  | 
        
| operator Float | 
            Long.component3()
            Returns the third component of the color.  | 
        
| operator Float | 
            Long.component4()
            Returns the fourth component of the color.  | 
        
| infix Long | 
            Long.convertTo(colorSpace: Named)
            Converts the color long receiver to a color long in the specified color space.  | 
        
| infix Long | 
            Long.convertTo(colorSpace: ColorSpace)
            Converts the color long receiver to a color long in the specified color space.  | 
        
| Color | 
            Long.toColor()
            Creates a new Color instance from a color long.  | 
        
| Int | 
            Long.toColorInt()
            Converts the specified color long to an ARGB color int.  | 
        
For kotlin.String
| Int | 
            String.toColorInt()
            
           | 
        
Extension properties
For kotlin.Int
| Int | 
            Int.alpha()
            Return the alpha component of a color int.  | 
        
| Int | 
            Int.blue()
            Return the blue component of a color int.  | 
        
| Int | 
            Int.green()
            Return the green component of a color int.  | 
        
| Float | 
            Int.luminance()
            Returns the relative luminance of a color int, assuming sRGB encoding.  | 
        
| Int | 
            Int.red()
            Return the red component of a color int.  | 
        
For kotlin.Long
| Float | 
            Long.alpha()
            Return the alpha component of a color long.  | 
        
| Float | 
            Long.blue()
            Return the blue component of a color long.  | 
        
| ColorSpace | 
            Long.colorSpace()
            Returns the color space encoded in the specified color long.  | 
        
| Float | 
            Long.green()
            Return the green component of a color long.  | 
        
| Boolean | 
            Long.isSrgb()
            Indicates whether the color is in the sRGB color space.  | 
        
| Boolean | 
            Long.isWideGamut()
            Indicates whether the color is in a wide-gamut color space.  | 
        
| Float | 
            Long.luminance()
            Returns the relative luminance of a color.  | 
        
| Float | 
            Long.red()
            Return the red component of a color long.  | 
        
Top-level functions
| Bitmap | 
            createBitmap(width: Int, height: Int, config: Config = Bitmap.Config.ARGB_8888)
            Returns a mutable bitmap with the specified width and height.  | 
        
| Bitmap | 
            createBitmap(width: Int, height: Int, config: Config = Bitmap.Config.ARGB_8888, hasAlpha: Boolean = true, colorSpace: ColorSpace = ColorSpace.get(ColorSpace.Named.SRGB))
            Returns a mutable bitmap with the specified width and height.  | 
        
| Matrix | 
            rotationMatrix(degrees: Float, px: Float = 0.0f, py: Float = 0.0f)
            Creates a rotation matrix, defined by a rotation angle in degrees around the pivot point located at the coordinates (px, py).  | 
        
| Matrix | 
            scaleMatrix(sx: Float = 1.0f, sy: Float = 1.0f)
            Creates a scale matrix with the scale factor sx and sy respectively on the
  | 
        
| Matrix | 
            translationMatrix(tx: Float = 0.0f, ty: Float = 0.0f)
            Creates a translation matrix with the translation amounts tx and ty
respectively on the   | 
        
androidx.core.graphics.drawable
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.graphics.Bitmap
| Icon | 
            Bitmap.toAdaptiveIcon()
            
           | 
        
| BitmapDrawable | 
            Bitmap.toDrawable(resources: Resources)
            Create a BitmapDrawable from this Bitmap.  | 
        
| Icon | 
            Bitmap.toIcon()
            
           | 
        
For android.graphics.Color
| ColorDrawable | 
            Color.toDrawable()
            Create a ColorDrawable from this Color (via Color.toArgb).  | 
        
For android.graphics.drawable.Drawable
| Bitmap | 
            Drawable.toBitmap(@Px width: Int = intrinsicWidth, @Px height: Int = intrinsicHeight, config: Config? = null)
            
           | 
        
| Unit | 
            Drawable.updateBounds(@Px left: Int = bounds.left, @Px top: Int = bounds.top, @Px right: Int = bounds.right, @Px bottom: Int = bounds.bottom)
            Updates this drawable's bounds.  | 
        
For android.net.Uri
| Icon | 
            Uri.toIcon()
            
           | 
        
For kotlin.ByteArray
| Icon | 
            ByteArray.toIcon()
            
           | 
        
For kotlin.Int
| ColorDrawable | 
            Int.toDrawable()
            Create a ColorDrawable from this color value.  | 
        
androidx.core.location
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.location.Location
| operator Double | 
            Location.component1()
            Returns the latitude of this Location.  | 
        
| operator Double | 
            Location.component2()
            Returns the longitude of this Location.  | 
        
androidx.core.net
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.net.Uri
| File | 
            Uri.toFile()
            
           | 
        
For java.io.File
| Uri | 
            File.toUri()
            Creates a Uri from the given file.  | 
        
For kotlin.String
| Uri | 
            String.toUri()
            Creates a Uri from the given encoded URI string.  | 
        
androidx.core.os
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.os.Handler
| Runnable | 
            Handler.postAtTime(uptimeMillis: Long, token: Any? = null, crossinline action: () -> Unit)
            Version of Handler.postAtTime which re-orders the parameters, allowing the action to be placed outside of parentheses.  | 
        
| Runnable | 
            Handler.postDelayed(delayInMillis: Long, token: Any? = null, crossinline action: () -> Unit)
            Version of Handler.postDelayed which re-orders the parameters, allowing the action to be placed outside of parentheses.  | 
        
Top-level functions
| Bundle | 
            bundleOf(vararg pairs: Pair<String, Any?>)
            Returns a new Bundle with the given key/value pairs as elements.  | 
        
| PersistableBundle | 
            persistableBundleOf(vararg pairs: Pair<String, Any?>)
            Returns a new PersistableBundle with the given key/value pairs as elements.  | 
        
| T | 
            trace(sectionName: String, block: () -> T)
            Wrap the specified block in calls to Trace.beginSection (with the supplied sectionName) and Trace.endSection.  | 
        
androidx.core.text
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.text.Spannable
| Unit | 
            Spannable.clearSpans()
            Clear all spans from this text.  | 
        
| operator Unit | 
            Spannable.set(start: Int, end: Int, span: Any)
            
           | 
        
| operator Unit | 
            Spannable.set(range: IntRange, span: Any)
            
           | 
        
For android.text.SpannableStringBuilder
For android.text.Spanned
| Array<out T> | 
            Spanned.getSpans(start: Int = 0, end: Int = length)
            Get all spans that are instance of T.  | 
        
| String | 
            Spanned.toHtml(option: Int = TO_HTML_PARAGRAPH_LINES_CONSECUTIVE)
            Returns a string of HTML from the spans in this Spanned.  | 
        
For kotlin.CharSequence
| Boolean | 
            CharSequence.isDigitsOnly()
            Returns whether the given CharSequence contains only digits.  | 
        
| Spannable | 
            CharSequence.toSpannable()
            Returns a new Spannable from CharSequence, or the source itself if it is already an instance of SpannableString.  | 
        
| Spanned | 
            CharSequence.toSpanned()
            Returns a new Spanned from CharSequence, or the source itself if it is already an instance of SpannedString.  | 
        
| Int | 
            CharSequence.trimmedLength()
            Returns the length that the specified CharSequence would have if spaces and ASCII control characters were trimmed from the start and end, as by String.trim.  | 
        
For kotlin.String
| String | 
            String.htmlEncode()
            Html-encode the string.  | 
        
| Spanned | 
            String.parseAsHtml(flags: Int = FROM_HTML_MODE_LEGACY, imageGetter: ImageGetter? = null, tagHandler: TagHandler? = null)
            Returns a Spanned from parsing this string as HTML.  | 
        
Extension properties
For java.util.Locale
| Int | 
            Locale.layoutDirection()
            Returns layout direction for a given locale.  | 
        
Top-level functions
| SpannedString | 
            buildSpannedString(builderAction: SpannableStringBuilder.() -> Unit)
            Builds new string by populating a newly created SpannableStringBuilder using the provided builderAction and then converting it to SpannedString.  | 
        
androidx.core.transition
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.transition.Transition
| TransitionListener | 
            Transition.addListener(crossinline onEnd: (transition: Transition) -> Unit = {}, crossinline onStart: (transition: Transition) -> Unit = {}, crossinline onCancel: (transition: Transition) -> Unit = {}, crossinline onResume: (transition: Transition) -> Unit = {}, crossinline onPause: (transition: Transition) -> Unit = {})
            Add a listener to this Transition using the provided actions.  | 
        
| TransitionListener | 
            Transition.doOnCancel(crossinline action: (transition: Transition) -> Unit)
            Add an action which will be invoked when this transition has been cancelled.  | 
        
| TransitionListener | 
            Transition.doOnEnd(crossinline action: (transition: Transition) -> Unit)
            Add an action which will be invoked when this transition has ended.  | 
        
| TransitionListener | 
            Transition.doOnPause(crossinline action: (transition: Transition) -> Unit)
            Add an action which will be invoked when this transition has been paused.  | 
        
| TransitionListener | 
            Transition.doOnResume(crossinline action: (transition: Transition) -> Unit)
            Add an action which will be invoked when this transition has resumed after a pause.  | 
        
| TransitionListener | 
            Transition.doOnStart(crossinline action: (transition: Transition) -> Unit)
            Add an action which will be invoked when this transition has started.  | 
        
androidx.core.util
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.util.AtomicFile
| ByteArray | 
            AtomicFile.readBytes()
            Gets the entire content of this file as a byte array.  | 
        
| String | 
            AtomicFile.readText(charset: Charset = Charsets.UTF_8)
            Gets the entire content of this file as a String using UTF-8 or specified charset.  | 
        
| Unit | 
            AtomicFile.tryWrite(block: (out: FileOutputStream) -> Unit)
            Perform the write operations inside block on this file.  | 
        
| Unit | 
            AtomicFile.writeBytes(array: ByteArray)
            Sets the content of this file as an array of bytes.  | 
        
| Unit | 
            AtomicFile.writeText(text: String, charset: Charset = Charsets.UTF_8)
            Sets the content of this file as text encoded using UTF-8 or specified charset.  | 
        
For android.util.LongSparseArray
| operator Boolean | 
            LongSparseArray<T>.contains(key: Long)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            LongSparseArray<T>.containsKey(key: Long)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            LongSparseArray<T>.containsValue(value: T)
            Returns true if the collection contains value.  | 
        
| Unit | 
            LongSparseArray<T>.forEach(action: (key: Long, value: T) -> Unit)
            Performs the given action for each key/value entry.  | 
        
| T | 
            LongSparseArray<T>.getOrDefault(key: Long, defaultValue: T)
            Return the value corresponding to key, or defaultValue when not present.  | 
        
| T | 
            LongSparseArray<T>.getOrElse(key: Long, defaultValue: () -> T)
            Return the value corresponding to key, or from defaultValue when not present.  | 
        
| Boolean | 
            LongSparseArray<T>.isEmpty()
            Return true when the collection contains no elements.  | 
        
| Boolean | 
            LongSparseArray<T>.isNotEmpty()
            Return true when the collection contains elements.  | 
        
| LongIterator | 
            LongSparseArray<T>.keyIterator()
            Return an iterator over the collection's keys.  | 
        
| operator LongSparseArray<T> | 
            LongSparseArray<T>.plus(other: LongSparseArray<T>)
            Creates a new collection by adding or replacing entries from other.  | 
        
| Unit | 
            LongSparseArray<T>.putAll(other: LongSparseArray<T>)
            Update this collection by adding or replacing entries from other.  | 
        
| Boolean | 
            LongSparseArray<T>.remove(key: Long, value: T)
            
           | 
        
| operator Unit | 
            LongSparseArray<T>.set(key: Long, value: T)
            Allows the use of the index operator for storing values in the collection.  | 
        
| Iterator<T> | 
            LongSparseArray<T>.valueIterator()
            Return an iterator over the collection's values.  | 
        
For android.util.Pair
| operator F | 
            Pair<F, S>.component1()
            Returns the first component of the pair.  | 
        
| operator S | 
            Pair<F, S>.component2()
            Returns the second component of the pair.  | 
        
| Pair<F, S> | 
            Pair<F, S>.toKotlinPair()
            Returns this Pair as a kotlin.Pair.  | 
        
For android.util.Range
| infix Range<T> | 
            Range<T>.and(other: Range<T>)
            Return the intersection of this range and other.  | 
        
| operator Range<T> | 
            Range<T>.plus(value: T)
            Return the smallest range that includes this and value.  | 
        
| operator Range<T> | 
            Range<T>.plus(other: Range<T>)
            Return the smallest range that includes this and other.  | 
        
| ClosedRange<T> | 
            Range<T>.toClosedRange()
            Returns this Range as a ClosedRange.  | 
        
For android.util.Size
| operator Int | 
            Size.component1()
            Returns "width", the first component of this Size.  | 
        
| operator Int | 
            Size.component2()
            Returns "height", the second component of this Size.  | 
        
For android.util.SizeF
| operator Float | 
            SizeF.component1()
            Returns "width", the first component of this SizeF.  | 
        
| operator Float | 
            SizeF.component2()
            Returns "height", the second component of this SizeF.  | 
        
For android.util.SparseArray
| operator Boolean | 
            SparseArray<T>.contains(key: Int)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            SparseArray<T>.containsKey(key: Int)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            SparseArray<T>.containsValue(value: T)
            Returns true if the collection contains value.  | 
        
| Unit | 
            SparseArray<T>.forEach(action: (key: Int, value: T) -> Unit)
            Performs the given action for each key/value entry.  | 
        
| T | 
            SparseArray<T>.getOrDefault(key: Int, defaultValue: T)
            Return the value corresponding to key, or defaultValue when not present.  | 
        
| T | 
            SparseArray<T>.getOrElse(key: Int, defaultValue: () -> T)
            Return the value corresponding to key, or from defaultValue when not present.  | 
        
| Boolean | 
            SparseArray<T>.isEmpty()
            Return true when the collection contains no elements.  | 
        
| Boolean | 
            SparseArray<T>.isNotEmpty()
            Return true when the collection contains elements.  | 
        
| IntIterator | 
            SparseArray<T>.keyIterator()
            Return an iterator over the collection's keys.  | 
        
| operator SparseArray<T> | 
            SparseArray<T>.plus(other: SparseArray<T>)
            Creates a new collection by adding or replacing entries from other.  | 
        
| Unit | 
            SparseArray<T>.putAll(other: SparseArray<T>)
            Update this collection by adding or replacing entries from other.  | 
        
| Boolean | 
            SparseArray<T>.remove(key: Int, value: T)
            
           | 
        
| operator Unit | 
            SparseArray<T>.set(key: Int, value: T)
            Allows the use of the index operator for storing values in the collection.  | 
        
| Iterator<T> | 
            SparseArray<T>.valueIterator()
            Return an iterator over the collection's values.  | 
        
For android.util.SparseBooleanArray
| operator Boolean | 
            SparseBooleanArray.contains(key: Int)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            SparseBooleanArray.containsKey(key: Int)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            SparseBooleanArray.containsValue(value: Boolean)
            Returns true if the collection contains value.  | 
        
| Unit | 
            SparseBooleanArray.forEach(action: (key: Int, value: Boolean) -> Unit)
            Performs the given action for each key/value entry.  | 
        
| Boolean | 
            SparseBooleanArray.getOrDefault(key: Int, defaultValue: Boolean)
            Return the value corresponding to key, or defaultValue when not present.  | 
        
| Boolean | 
            SparseBooleanArray.getOrElse(key: Int, defaultValue: () -> Boolean)
            Return the value corresponding to key, or from defaultValue when not present.  | 
        
| Boolean | 
            SparseBooleanArray.isEmpty()
            Return true when the collection contains no elements.  | 
        
| Boolean | 
            SparseBooleanArray.isNotEmpty()
            Return true when the collection contains elements.  | 
        
| IntIterator | 
            SparseBooleanArray.keyIterator()
            Return an iterator over the collection's keys.  | 
        
| operator SparseBooleanArray | 
            SparseBooleanArray.plus(other: SparseBooleanArray)
            Creates a new collection by adding or replacing entries from other.  | 
        
| Unit | 
            SparseBooleanArray.putAll(other: SparseBooleanArray)
            Update this collection by adding or replacing entries from other.  | 
        
| Boolean | 
            SparseBooleanArray.remove(key: Int, value: Boolean)
            
           | 
        
| operator Unit | 
            SparseBooleanArray.set(key: Int, value: Boolean)
            Allows the use of the index operator for storing values in the collection.  | 
        
| BooleanIterator | 
            SparseBooleanArray.valueIterator()
            Return an iterator over the collection's values.  | 
        
For android.util.SparseIntArray
| operator Boolean | 
            SparseIntArray.contains(key: Int)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            SparseIntArray.containsKey(key: Int)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            SparseIntArray.containsValue(value: Int)
            Returns true if the collection contains value.  | 
        
| Unit | 
            SparseIntArray.forEach(action: (key: Int, value: Int) -> Unit)
            Performs the given action for each key/value entry.  | 
        
| Int | 
            SparseIntArray.getOrDefault(key: Int, defaultValue: Int)
            Return the value corresponding to key, or defaultValue when not present.  | 
        
| Int | 
            SparseIntArray.getOrElse(key: Int, defaultValue: () -> Int)
            Return the value corresponding to key, or from defaultValue when not present.  | 
        
| Boolean | 
            SparseIntArray.isEmpty()
            Return true when the collection contains no elements.  | 
        
| Boolean | 
            SparseIntArray.isNotEmpty()
            Return true when the collection contains elements.  | 
        
| IntIterator | 
            SparseIntArray.keyIterator()
            Return an iterator over the collection's keys.  | 
        
| operator SparseIntArray | 
            SparseIntArray.plus(other: SparseIntArray)
            Creates a new collection by adding or replacing entries from other.  | 
        
| Unit | 
            SparseIntArray.putAll(other: SparseIntArray)
            Update this collection by adding or replacing entries from other.  | 
        
| Boolean | 
            SparseIntArray.remove(key: Int, value: Int)
            
           | 
        
| operator Unit | 
            SparseIntArray.set(key: Int, value: Int)
            Allows the use of the index operator for storing values in the collection.  | 
        
| IntIterator | 
            SparseIntArray.valueIterator()
            Return an iterator over the collection's values.  | 
        
For android.util.SparseLongArray
| operator Boolean | 
            SparseLongArray.contains(key: Int)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            SparseLongArray.containsKey(key: Int)
            Returns true if the collection contains key.  | 
        
| Boolean | 
            SparseLongArray.containsValue(value: Long)
            Returns true if the collection contains value.  | 
        
| Unit | 
            SparseLongArray.forEach(action: (key: Int, value: Long) -> Unit)
            Performs the given action for each key/value entry.  | 
        
| Long | 
            SparseLongArray.getOrDefault(key: Int, defaultValue: Long)
            Return the value corresponding to key, or defaultValue when not present.  | 
        
| Long | 
            SparseLongArray.getOrElse(key: Int, defaultValue: () -> Long)
            Return the value corresponding to key, or from defaultValue when not present.  | 
        
| Boolean | 
            SparseLongArray.isEmpty()
            Return true when the collection contains no elements.  | 
        
| Boolean | 
            SparseLongArray.isNotEmpty()
            Return true when the collection contains elements.  | 
        
| IntIterator | 
            SparseLongArray.keyIterator()
            Return an iterator over the collection's keys.  | 
        
| operator SparseLongArray | 
            SparseLongArray.plus(other: SparseLongArray)
            Creates a new collection by adding or replacing entries from other.  | 
        
| Unit | 
            SparseLongArray.putAll(other: SparseLongArray)
            Update this collection by adding or replacing entries from other.  | 
        
| Boolean | 
            SparseLongArray.remove(key: Int, value: Long)
            
           | 
        
| operator Unit | 
            SparseLongArray.set(key: Int, value: Long)
            Allows the use of the index operator for storing values in the collection.  | 
        
| LongIterator | 
            SparseLongArray.valueIterator()
            Return an iterator over the collection's values.  | 
        
For kotlin.Double
| Half | 
            Double.toHalf()
            
           | 
        
For kotlin.Float
| Half | 
            Float.toHalf()
            
           | 
        
For kotlin.Pair
| Pair<F, S> | 
            Pair<F, S>.toAndroidPair()
            Returns this kotlin.Pair as an Android Pair.  | 
        
For kotlin.Short
| Half | 
            Short.toHalf()
            
           | 
        
For kotlin.String
| Half | 
            String.toHalf()
            
           | 
        
For kotlin.ranges.ClosedRange
| Range<T> | 
            ClosedRange<T>.toRange()
            Returns this ClosedRange as a Range.  | 
        
Extension properties
For android.util.LongSparseArray
| Int | 
            LongSparseArray<T>.size()
            Returns the number of key/value pairs in the collection.  | 
        
For android.util.SparseArray
| Int | 
            SparseArray<T>.size()
            Returns the number of key/value pairs in the collection.  | 
        
For android.util.SparseBooleanArray
| Int | 
            SparseBooleanArray.size()
            Returns the number of key/value pairs in the collection.  | 
        
For android.util.SparseIntArray
| Int | 
            SparseIntArray.size()
            Returns the number of key/value pairs in the collection.  | 
        
For android.util.SparseLongArray
| Int | 
            SparseLongArray.size()
            Returns the number of key/value entries in the collection.  | 
        
Top-level functions
| LruCache<K, V> | 
            lruCache(maxSize: Int, crossinline sizeOf: (key: K, value: V) -> Int = { _, _ -> 1 }, crossinline create: (key: K) -> V? = { null as V? }, crossinline onEntryRemoved: (evicted: Boolean, key: K, oldValue: V, newValue: V?) -> Unit = { _, _, _, _ -> })
            Creates an LruCache with the given parameters.  | 
        
| infix Range<T> | 
            T.rangeTo(that: T)
            Creates a range from this Comparable value to that.  | 
        
androidx.core.view
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.view.Menu
| operator Boolean | 
            Menu.contains(item: MenuItem)
            Returns   | 
        
| Unit | 
            Menu.forEach(action: (item: MenuItem) -> Unit)
            Performs the given action on each item in this menu.  | 
        
| Unit | 
            Menu.forEachIndexed(action: (index: Int, item: MenuItem) -> Unit)
            Performs the given action on each item in this menu, providing its sequential index.  | 
        
| operator MenuItem | 
            Menu.get(index: Int)
            Returns the menu at index.  | 
        
| Boolean | 
            Menu.isEmpty()
            Returns true if this menu contains no items.  | 
        
| Boolean | 
            Menu.isNotEmpty()
            Returns true if this menu contains one or more items.  | 
        
| operator MutableIterator<MenuItem> | 
            Menu.iterator()
            Returns a MutableIterator over the items in this menu.  | 
        
| operator Unit | 
            Menu.minusAssign(item: MenuItem)
            Removes item from this menu.  | 
        
For android.view.View
| Unit | 
            View.doOnAttach(crossinline action: (view: View) -> Unit)
            Performs the given action when this view is attached to a window.  | 
        
| Unit | 
            View.doOnDetach(crossinline action: (view: View) -> Unit)
            Performs the given action when this view is detached from a window.  | 
        
| Unit | 
            View.doOnLayout(crossinline action: (view: View) -> Unit)
            Performs the given action when this view is laid out.  | 
        
| Unit | 
            View.doOnNextLayout(crossinline action: (view: View) -> Unit)
            Performs the given action when this view is next laid out.  | 
        
| OneShotPreDrawListener | 
            View.doOnPreDraw(crossinline action: (view: View) -> Unit)
            Performs the given action when the view tree is about to be drawn.  | 
        
| Bitmap | 
            View.drawToBitmap(config: Config = Bitmap.Config.ARGB_8888)
            
           | 
        
| Runnable | 
            View.postDelayed(delayInMillis: Long, crossinline action: () -> Unit)
            Version of View.postDelayed which re-orders the parameters, allowing the action to be placed outside of parentheses.  | 
        
| Runnable | 
            View.postOnAnimationDelayed(delayInMillis: Long, crossinline action: () -> Unit)
            Version of View.postOnAnimationDelayed which re-orders the parameters, allowing the action to be placed outside of parentheses.  | 
        
| Unit | 
            View.setPadding(@Px size: Int)
            Sets the view's padding.  | 
        
| Unit | 
            View.updateLayoutParams(block: LayoutParams.() -> Unit)
            Executes block with the View's layoutParams and reassigns the layoutParams with the updated version.  | 
        
| Unit | 
            View.updateLayoutParams(block: T.() -> Unit)
            Executes block with a typed version of the View's layoutParams and reassigns the layoutParams with the updated version.  | 
        
| Unit | 
            View.updatePadding(@Px left: Int = paddingLeft, @Px top: Int = paddingTop, @Px right: Int = paddingRight, @Px bottom: Int = paddingBottom)
            Updates this view's padding.  | 
        
| Unit | 
            View.updatePaddingRelative(@Px start: Int = paddingStart, @Px top: Int = paddingTop, @Px end: Int = paddingEnd, @Px bottom: Int = paddingBottom)
            Updates this view's relative padding.  | 
        
For android.view.ViewGroup
| operator Boolean | 
            ViewGroup.contains(view: View)
            Returns   | 
        
| Unit | 
            ViewGroup.forEach(action: (view: View) -> Unit)
            Performs the given action on each view in this view group.  | 
        
| Unit | 
            ViewGroup.forEachIndexed(action: (index: Int, view: View) -> Unit)
            Performs the given action on each view in this view group, providing its sequential index.  | 
        
| operator View | 
            ViewGroup.get(index: Int)
            Returns the view at index.  | 
        
| Boolean | 
            ViewGroup.isEmpty()
            Returns true if this view group contains no views.  | 
        
| Boolean | 
            ViewGroup.isNotEmpty()
            Returns true if this view group contains one or more views.  | 
        
| operator MutableIterator<View> | 
            ViewGroup.iterator()
            Returns a MutableIterator over the views in this view group.  | 
        
| operator Unit | 
            ViewGroup.minusAssign(view: View)
            Removes view from this view group.  | 
        
| operator Unit | 
            ViewGroup.plusAssign(view: View)
            Adds view to this view group.  | 
        
For android.view.ViewGroup.MarginLayoutParams
| Unit | 
            MarginLayoutParams.setMargins(@Px size: Int)
            Sets the margins in the ViewGroup's MarginLayoutParams.  | 
        
| Unit | 
            MarginLayoutParams.updateMargins(@Px left: Int = leftMargin, @Px top: Int = topMargin, @Px right: Int = rightMargin, @Px bottom: Int = bottomMargin)
            Updates the margins in the ViewGroup's ViewGroup.MarginLayoutParams.  | 
        
| Unit | 
            MarginLayoutParams.updateMarginsRelative(@Px start: Int = marginStart, @Px top: Int = topMargin, @Px end: Int = marginEnd, @Px bottom: Int = bottomMargin)
            Updates the relative margins in the ViewGroup's MarginLayoutParams.  | 
        
Extension properties
For android.view.Menu
| Sequence<MenuItem> | 
            Menu.children()
            Returns a Sequence over the items in this menu.  | 
        
| Int | 
            Menu.size()
            Returns the number of items in this menu.  | 
        
For android.view.View
| Boolean | 
            View.isGone()
            Returns true when this view's visibility is View.GONE, false otherwise.  | 
        
| Boolean | 
            View.isInvisible()
            Returns true when this view's visibility is View.INVISIBLE, false otherwise.  | 
        
| Boolean | 
            View.isVisible()
            Returns true when this view's visibility is View.VISIBLE, false otherwise.  | 
        
| Int | 
            View.marginBottom()
            Returns the bottom margin if this view's LayoutParams is a ViewGroup.MarginLayoutParams, otherwise 0.  | 
        
| Int | 
            View.marginEnd()
            Returns the end margin if this view's LayoutParams is a ViewGroup.MarginLayoutParams, otherwise 0.  | 
        
| Int | 
            View.marginLeft()
            Returns the left margin if this view's LayoutParams is a ViewGroup.MarginLayoutParams, otherwise 0.  | 
        
| Int | 
            View.marginRight()
            Returns the right margin if this view's LayoutParams is a ViewGroup.MarginLayoutParams, otherwise 0.  | 
        
| Int | 
            View.marginStart()
            Returns the start margin if this view's LayoutParams is a ViewGroup.MarginLayoutParams, otherwise 0.  | 
        
| Int | 
            View.marginTop()
            Returns the top margin if this view's LayoutParams is a ViewGroup.MarginLayoutParams, otherwise 0.  | 
        
For android.view.ViewGroup
| Sequence<View> | 
            ViewGroup.children()
            Returns a Sequence over the child views in this view group.  | 
        
| Int | 
            ViewGroup.size()
            Returns the number of views in this view group.  | 
        
androidx.core.widget
Dependency
Groovy
dependencies { implementation "androidx.core:core-ktx:1.17.0" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.17.0") }
Extension functions
For android.widget.TextView
| TextWatcher | 
            TextView.addTextChangedListener(crossinline beforeTextChanged: (text: CharSequence?, start: Int, count: Int, after: Int) -> Unit = { _, _, _, _ -> }, crossinline onTextChanged: (text: CharSequence?, start: Int, count: Int, after: Int) -> Unit = { _, _, _, _ -> }, crossinline afterTextChanged: (text: Editable?) -> Unit = {})
            Add a text changed listener to this TextView using the provided actions  | 
        
| TextWatcher | 
            TextView.doAfterTextChanged(crossinline action: (text: Editable?) -> Unit)
            Add an action which will be invoked after the text changed.  | 
        
| TextWatcher | 
            TextView.doBeforeTextChanged(crossinline action: (text: CharSequence?, start: Int, count: Int, after: Int) -> Unit)
            Add an action which will be invoked before the text changed.  | 
        
| TextWatcher | 
            TextView.doOnTextChanged(crossinline action: (text: CharSequence?, start: Int, count: Int, after: Int) -> Unit)
            Add an action which will be invoked when the text is changing.  | 
        
androidx.dynamicanimation.animation
Dependency
Groovy
dependencies { implementation "androidx.dynamicanimation:dynamicanimation-ktx:" }
Kotlin
dependencies { implementation("androidx.dynamicanimation:dynamicanimation-ktx:") }
Extension functions
For SpringAnimation
| SpringAnimation | 
            SpringAnimation.withSpringForceProperties(func: SpringForce.() -> Unit)
            Updates or applies spring force properties like SpringForce.mDampingRatio, SpringForce.mFinalPosition and stiffness on SpringAnimation.  | 
        
Top-level functions
| FlingAnimation | 
            flingAnimationOf(setter: (Float) -> Unit, getter: () -> Float)
            Creates FlingAnimation for a property that can be accessed via the provided setter and getter.  | 
        
| SpringAnimation | 
            springAnimationOf(setter: (Float) -> Unit, getter: () -> Float, finalPosition: Float = Float.NaN)
            Creates SpringAnimation for a property that can be accessed via the provided setter and getter.  | 
        
androidx.fragment.app
Dependency
Groovy
dependencies { implementation "androidx.fragment:fragment-ktx:1.8.9" }
Kotlin
dependencies { implementation("androidx.fragment:fragment-ktx:1.8.9") }
Extension functions
For android.view.View
| F | 
            View.findFragment()
            
           | 
        
For Fragment
| Lazy<VM> | 
            Fragment.activityViewModels(noinline factoryProducer: () -> ViewModelProvider.Factory = null)
            Returns a property delegate to access parent activity's ViewModel, if factoryProducer is specified then ViewModelProvider.Factory returned by it will be used to create ViewModel first time.  | 
        
| Lazy<VM> | 
            Fragment.createViewModelLazy(viewModelClass: KClass<VM>, storeProducer: () -> ViewModelStore, factoryProducer: () -> ViewModelProvider.Factory = null)
            Helper method for creation of ViewModelLazy, that resolves   | 
        
| Lazy<VM> | 
            Fragment.viewModels(noinline ownerProducer: () -> ViewModelStoreOwner = { this }, noinline factoryProducer: () -> ViewModelProvider.Factory = null)
            Returns a property delegate to access ViewModel by default scoped to this Fragment:  | 
        
For FragmentTransaction
| FragmentTransaction | 
            FragmentTransaction.add(@IdRes containerViewId: Int, tag: String? = null, args: Bundle? = null)
            Add a fragment to the associated FragmentManager, inflating the Fragment's view into the container view specified by containerViewId, to later retrieve via FragmentManager.findFragmentById.  | 
        
| FragmentTransaction | 
            FragmentTransaction.add(tag: String, args: Bundle? = null)
            Add a fragment to the associated FragmentManager without adding the Fragment to any container view.  | 
        
| FragmentTransaction | 
            FragmentTransaction.replace(@IdRes containerViewId: Int, tag: String? = null, args: Bundle? = null)
            Replace an existing fragment that was added to a container.  | 
        
For FragmentManager
| Unit | 
            FragmentManager.commit(allowStateLoss: Boolean = false, body: FragmentTransaction.() -> Unit)
            Run body in a FragmentTransaction which is automatically committed if it completes without exception.  | 
        
| Unit | 
            FragmentManager.commitNow(allowStateLoss: Boolean = false, body: FragmentTransaction.() -> Unit)
            Run body in a FragmentTransaction which is automatically committed if it completes without exception.  | 
        
| Unit | 
            FragmentManager.transaction(now: Boolean = false, allowStateLoss: Boolean = false, body: FragmentTransaction.() -> Unit)
            Run body in a FragmentTransaction which is automatically committed if it completes without exception.  | 
        
androidx.fragment.app.testing
Dependency
Groovy
dependencies { implementation "androidx.fragment:fragment-testing:1.8.9" }
Kotlin
dependencies { implementation("androidx.fragment:fragment-testing:1.8.9") }
Top-level functions
| FragmentScenario<F!> | 
            launchFragment(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, factory: FragmentFactory? = null)
            Launches a Fragment with given arguments hosted by an empty FragmentActivity using given FragmentFactory and waits for it to reach a resumed state.  | 
        
| FragmentScenario<F!> | 
            launchFragment(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, crossinline instantiate: () -> F)
            Launches a Fragment with given arguments hosted by an empty FragmentActivity using instantiate to create the Fragment and waits for it to reach a resumed state.  | 
        
| FragmentScenario<F!> | 
            launchFragmentInContainer(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, factory: FragmentFactory? = null)
            Launches a Fragment in the Activity's root view container   | 
        
| FragmentScenario<F!> | 
            launchFragmentInContainer(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, crossinline instantiate: () -> F)
            Launches a Fragment in the Activity's root view container   | 
        
androidx.lifecycle
Dependency
Groovy
dependencies { implementation "androidx.lifecycle:lifecycle-livedata-core-ktx:2.9.4" implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.9.4" implementation "androidx.lifecycle:lifecycle-reactivestreams-ktx:2.9.4" implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.9.4" implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.9.4" }
Kotlin
dependencies { implementation("androidx.lifecycle:lifecycle-livedata-core-ktx:2.9.4") implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.9.4") implementation("androidx.lifecycle:lifecycle-reactivestreams-ktx:2.9.4") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.9.4") implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.9.4") }
Extension functions
For kotlinx.coroutines.flow.Flow
| LiveData<T> | 
            Flow<T>.asLiveData(context: CoroutineContext = EmptyCoroutineContext, timeoutInMs: Long = DEFAULT_TIMEOUT)
            Creates a LiveData that has values collected from the origin Flow.  | 
        
| LiveData<T> | 
            Flow<T>.asLiveData(context: CoroutineContext = EmptyCoroutineContext, timeout: Duration)
            Creates a LiveData that has values collected from the origin Flow.  | 
        
For org.reactivestreams.Publisher
| LiveData<T> | 
            Publisher<T>.toLiveData()
            Creates an observable LiveData stream from a ReactiveStreams Publisher.  | 
        
For LiveData
| Flow<T> | 
            LiveData<T>.asFlow()
            Creates a Flow containing values dispatched by originating LiveData: at the start a flow collector receives the latest value held by LiveData and then observes LiveData updates.  | 
        
| LiveData<X> | 
            LiveData<X>.distinctUntilChanged()
            Creates a new LiveData object does not emit a value until the source   | 
        
| LiveData<Y> | 
            LiveData<X>.map(crossinline transform: (X) -> Y)
            Returns a LiveData mapped from   | 
        
| Observer<T> | 
            LiveData<T>.observe(owner: LifecycleOwner, crossinline onChanged: (T) -> Unit)
            Adds the given onChanged lambda as an observer within the lifespan of the given owner and returns a reference to observer.  | 
        
| LiveData<Y> | 
            LiveData<X>.switchMap(crossinline transform: (X) -> LiveData<Y>)
            Returns a LiveData mapped from the input   | 
        
| Publisher<T> | 
            LiveData<T>.toPublisher(lifecycle: LifecycleOwner)
            Adapts the given LiveData stream to a ReactiveStreams Publisher.  | 
        
For ViewModelProvider
| VM | 
            ViewModelProvider.get()
            Returns an existing ViewModel or creates a new one in the scope (usually, a fragment or
an activity), associated with this   | 
        
For LifecycleOwner
| suspend T | 
            LifecycleOwner.whenCreated(block: suspend CoroutineScope.() -> T)
            Runs the given block when the LifecycleOwner's Lifecycle is at least in Lifecycle.State.CREATED state.  | 
        
| suspend T | 
            LifecycleOwner.whenResumed(block: suspend CoroutineScope.() -> T)
            Runs the given block when the LifecycleOwner's Lifecycle is at least in Lifecycle.State.RESUMED state.  | 
        
| suspend T | 
            LifecycleOwner.whenStarted(block: suspend CoroutineScope.() -> T)
            Runs the given block when the LifecycleOwner's Lifecycle is at least in Lifecycle.State.STARTED state.  | 
        
For Lifecycle
| suspend T | 
            Lifecycle.whenCreated(block: suspend CoroutineScope.() -> T)
            Runs the given block when the Lifecycle is at least in Lifecycle.State.CREATED state.  | 
        
| suspend T | 
            Lifecycle.whenResumed(block: suspend CoroutineScope.() -> T)
            Runs the given block when the Lifecycle is at least in Lifecycle.State.RESUMED state.  | 
        
| suspend T | 
            Lifecycle.whenStarted(block: suspend CoroutineScope.() -> T)
            Runs the given block when the Lifecycle is at least in Lifecycle.State.STARTED state.  | 
        
| suspend T | 
            Lifecycle.whenStateAtLeast(minState: Lifecycle.State, block: suspend CoroutineScope.() -> T)
            Runs the given block on a CoroutineDispatcher that executes the block on the main thread and suspends the execution unless the Lifecycle's state is at least minState.  | 
        
Extension properties
For Lifecycle
| LifecycleCoroutineScope | 
            Lifecycle.coroutineScope()
            CoroutineScope tied to this Lifecycle.  | 
        
For LifecycleOwner
| LifecycleCoroutineScope | 
            LifecycleOwner.lifecycleScope()
            CoroutineScope tied to this LifecycleOwner's Lifecycle.  | 
        
For ViewModel
| CoroutineScope | 
            ViewModel.viewModelScope()
            CoroutineScope tied to this ViewModel.  | 
        
Top-level functions
| LiveData<T> | 
            liveData(context: CoroutineContext = EmptyCoroutineContext, timeoutInMs: Long = DEFAULT_TIMEOUT, block: suspend LiveDataScope<T>.() -> Unit)
            Builds a LiveData that has values yielded from the given block that executes on a LiveDataScope.  | 
        
| LiveData<T> | 
            liveData(context: CoroutineContext = EmptyCoroutineContext, timeout: Duration, block: suspend LiveDataScope<T>.() -> Unit)
            Builds a LiveData that has values yielded from the given block that executes on a LiveDataScope.  | 
        
androidx.navigation
Dependency
Groovy
dependencies { implementation "androidx.navigation:navigation-runtime-ktx:2.9.5" implementation "androidx.navigation:navigation-fragment-ktx:2.9.5" implementation "androidx.navigation:navigation-ui-ktx:2.9.5" }
Kotlin
dependencies { implementation("androidx.navigation:navigation-runtime-ktx:2.9.5") implementation("androidx.navigation:navigation-fragment-ktx:2.9.5") implementation("androidx.navigation:navigation-ui-ktx:2.9.5") }
Extension functions
For android.app.Activity
| NavController | 
            Activity.findNavController(@IdRes : Int)
            Find a NavController given the id of a View and its containing Activity.  | 
        
| NavArgsLazy<Args> | 
            Activity.navArgs()
            Returns a Lazy delegate to access the Activity's extras as an Args instance.  | 
        
For android.view.View
| NavController | 
            View.findNavController()
            Find a NavController associated with a View.  | 
        
For NavGraphBuilder
| Unit | 
            NavGraphBuilder.activity(@IdRes : Int, : ActivityNavigatorDestinationBuilder.() -> Unit)
            Construct a new ActivityNavigator.Destination  | 
        
| Unit | 
            NavGraphBuilder.navigation(@IdRes : Int, @IdRes : Int, : NavGraphBuilder.() -> Unit)
            Construct a nested NavGraph  | 
        
For NavGraph
| operator Boolean | 
            NavGraph.contains(@IdRes : Int)
            Returns   | 
        
| operator NavDestination | 
            NavGraph.get(@IdRes : Int)
            Returns the destination with   | 
        
| operator Unit | 
            NavGraph.minusAssign(: NavDestination)
            Removes   | 
        
| operator Unit | 
            NavGraph.plusAssign(: NavDestination)
            Adds a destination to this NavGraph.  | 
        
| operator Unit | 
            NavGraph.plusAssign(: NavGraph)
            Add all destinations from another collection to this one.  | 
        
For NavController
| NavGraph | 
            NavController.createGraph(@IdRes : Int = 0, @IdRes : Int, : NavGraphBuilder.() -> Unit)
            Construct a new NavGraph  | 
        
For NavHost
| NavGraph | 
            NavHost.createGraph(@IdRes : Int = 0, @IdRes : Int, : NavGraphBuilder.() -> Unit)
            Construct a new NavGraph  | 
        
For NavigatorProvider
| operator T | 
            NavigatorProvider.get(: String)
            Retrieves a registered Navigator by name.  | 
        
| operator T | 
            NavigatorProvider.get(: KClass<T>)
            Retrieves a registered Navigator using the name provided by the Navigator.Name annotation.  | 
        
| NavGraph | 
            NavigatorProvider.navigation(@IdRes : Int = 0, @IdRes : Int, : NavGraphBuilder.() -> Unit)
            Construct a new NavGraph  | 
        
| operator Unit | 
            NavigatorProvider.plusAssign(: Navigator<out NavDestination>)
            Register a navigator using the name provided by the Navigator.Name annotation.  | 
        
| operator Navigator<out NavDestination!>? | 
            NavigatorProvider.set(: String, : Navigator<out NavDestination>)
            Register a Navigator by name.  | 
        
For Fragment
| Lazy<VM> | 
            Fragment.navGraphViewModels(@IdRes : Int, noinline : () -> ViewModelProvider.Factory = null)
            Returns a property delegate to access a ViewModel scoped to a navigation graph present on the {@link NavController} back stack:  | 
        
Top-level functions
| ActivityNavigator.Extras | 
            ActivityNavigatorExtras(: ActivityOptionsCompat? = null, : Int = 0)
            Create a new ActivityNavigator.Extras instance with a specific ActivityOptionsCompat
instance and/or any   | 
        
| NavOptions | 
            navOptions(: NavOptionsBuilder.() -> Unit)
            Construct a new NavOptions  | 
        
androidx.navigation.fragment
Dependency
Groovy
dependencies { implementation "androidx.navigation:navigation-fragment-ktx:2.9.5" }
Kotlin
dependencies { implementation("androidx.navigation:navigation-fragment-ktx:2.9.5") }
Extension functions
For NavGraphBuilder
| Unit | 
            NavGraphBuilder.dialog(@IdRes : Int)
            Construct a new DialogFragmentNavigator.Destination  | 
        
| Unit | 
            NavGraphBuilder.dialog(@IdRes : Int, : DialogFragmentNavigatorDestinationBuilder.() -> Unit)
            Construct a new DialogFragmentNavigator.Destination  | 
        
| Unit | 
            NavGraphBuilder.fragment(@IdRes : Int)
            Construct a new FragmentNavigator.Destination  | 
        
| Unit | 
            NavGraphBuilder.fragment(@IdRes : Int, : FragmentNavigatorDestinationBuilder.() -> Unit)
            Construct a new FragmentNavigator.Destination  | 
        
For Fragment
| NavController | 
            Fragment.findNavController()
            Find a NavController given a Fragment  | 
        
| NavArgsLazy<Args> | 
            Fragment.navArgs()
            Returns a Lazy delegate to access the Fragment's arguments as an Args instance.  | 
        
Top-level functions
| FragmentNavigator.Extras | 
            FragmentNavigatorExtras(vararg : Pair<View, String>)
            Create a new FragmentNavigator.Extras instance with the given shared elements  | 
        
androidx.navigation.ui
Dependency
Groovy
dependencies { implementation "androidx.navigation:navigation-ui-ktx:2.9.5" }
Kotlin
dependencies { implementation("androidx.navigation:navigation-ui-ktx:2.9.5") }
Extension functions
For android.view.MenuItem
| Boolean | 
            MenuItem.onNavDestinationSelected(: NavController)
            Attempt to navigate to the NavDestination associated with this MenuItem.  | 
        
For androidx.appcompat.app.AppCompatActivity
| Unit | 
            AppCompatActivity.setupActionBarWithNavController(: NavController, : DrawerLayout?)
            Sets up the ActionBar returned by AppCompatActivity.getSupportActionBar for use with a NavController.  | 
        
| Unit | 
            AppCompatActivity.setupActionBarWithNavController(: NavController, : AppBarConfiguration = AppBarConfiguration(navController.graph))
            Sets up the ActionBar returned by AppCompatActivity.getSupportActionBar for use with a NavController.  | 
        
For androidx.appcompat.widget.Toolbar
| Unit | 
            Toolbar.setupWithNavController(: NavController, : DrawerLayout?)
            Sets up a Toolbar for use with a NavController.  | 
        
| Unit | 
            Toolbar.setupWithNavController(: NavController, : AppBarConfiguration = AppBarConfiguration(navController.graph))
            Sets up a Toolbar for use with a NavController.  | 
        
For com.google.android.material.appbar.CollapsingToolbarLayout
| Unit | 
            CollapsingToolbarLayout.setupWithNavController(: Toolbar, : NavController, : DrawerLayout?)
            Sets up a CollapsingToolbarLayout and Toolbar for use with a NavController.  | 
        
| Unit | 
            CollapsingToolbarLayout.setupWithNavController(: Toolbar, : NavController, : AppBarConfiguration = AppBarConfiguration(navController.graph))
            Sets up a CollapsingToolbarLayout and Toolbar for use with a NavController.  | 
        
For com.google.android.material.bottomnavigation.BottomNavigationView
| Unit | 
            BottomNavigationView.setupWithNavController(: NavController)
            Sets up a BottomNavigationView for use with a NavController.  | 
        
For com.google.android.material.navigation.NavigationView
| Unit | 
            NavigationView.setupWithNavController(: NavController)
            Sets up a NavigationView for use with a NavController.  | 
        
For NavController
| Boolean | 
            NavController.navigateUp(: DrawerLayout?)
            Handles the Up button by delegating its behavior to the given NavController.  | 
        
| Boolean | 
            NavController.navigateUp(: AppBarConfiguration)
            Handles the Up button by delegating its behavior to the given NavController.  | 
        
Top-level functions
androidx.paging
Dependency
Groovy
dependencies { implementation "androidx.paging:paging-common-ktx:2.1.2" implementation "androidx.paging:paging-runtime-ktx:2.1.2" implementation "androidx.paging:paging-rxjava2-ktx:2.1.2" }
Kotlin
dependencies { implementation("androidx.paging:paging-common-ktx:2.1.2") implementation("androidx.paging:paging-runtime-ktx:2.1.2") implementation("androidx.paging:paging-rxjava2-ktx:2.1.2") }
Extension functions
For Factory
| Flowable<PagedList<Value>> | 
            DataSource.Factory<Key, Value>.toFlowable(config: PagedList.Config, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchScheduler: Scheduler? = null, notifyScheduler: Scheduler? = null, backpressureStrategy: BackpressureStrategy = BackpressureStrategy.LATEST)
            Constructs a   | 
        
| Flowable<PagedList<Value>> | 
            DataSource.Factory<Key, Value>.toFlowable(pageSize: Int, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchScheduler: Scheduler? = null, notifyScheduler: Scheduler? = null, backpressureStrategy: BackpressureStrategy = BackpressureStrategy.LATEST)
            Constructs a   | 
        
| LiveData<PagedList<Value>> | 
            DataSource.Factory<Key, Value>.toLiveData(config: PagedList.Config, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchExecutor: Executor = ArchTaskExecutor.getIOThreadExecutor())
            Constructs a   | 
        
| LiveData<PagedList<Value>> | 
            DataSource.Factory<Key, Value>.toLiveData(pageSize: Int, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchExecutor: Executor = ArchTaskExecutor.getIOThreadExecutor())
            Constructs a   | 
        
| Observable<PagedList<Value>> | 
            DataSource.Factory<Key, Value>.toObservable(config: PagedList.Config, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchScheduler: Scheduler? = null, notifyScheduler: Scheduler? = null)
            Constructs a   | 
        
| Observable<PagedList<Value>> | 
            DataSource.Factory<Key, Value>.toObservable(pageSize: Int, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchScheduler: Scheduler? = null, notifyScheduler: Scheduler? = null)
            Constructs a   | 
        
Top-level functions
| PagedList.Config | 
            Config(pageSize: Int, prefetchDistance: Int = pageSize, enablePlaceholders: Boolean = true, initialLoadSizeHint: Int = pageSize * PagedList.Config.Builder.DEFAULT_INITIAL_PAGE_MULTIPLIER, maxSize: Int = PagedList.Config.MAX_SIZE_UNBOUNDED)
            Constructs a PagedList.Config, convenience for PagedList.Config.Builder.  | 
        
| PagedList<Value> | 
            PagedList(dataSource: DataSource<Key, Value>, config: PagedList.Config, notifyExecutor: Executor, fetchExecutor: Executor, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, initialKey: Key? = null)
            Constructs a PagedList, convenience for PagedList.Builder.  | 
        
androidx.palette.graphics
Dependency
Groovy
dependencies { implementation "androidx.palette:palette-ktx:1.0.0" }
Kotlin
dependencies { implementation("androidx.palette:palette-ktx:1.0.0") }
Extension functions
For Palette
| operator Palette.Swatch? | 
            Palette.get(target: Target)
            Returns the selected swatch for the given target from the palette, or   | 
        
androidx.preference
Dependency
Groovy
dependencies { implementation "androidx.preference:preference-ktx:1.2.1" }
Kotlin
dependencies { implementation("androidx.preference:preference-ktx:1.2.1") }
Extension functions
For PreferenceGroup
| operator Boolean | 
            PreferenceGroup.contains(preference: Preference)
            Returns   | 
        
| Unit | 
            PreferenceGroup.forEach(action: (preference: Preference) -> Unit)
            Performs the given action on each preference in this preference group.  | 
        
| Unit | 
            PreferenceGroup.forEachIndexed(action: (index: Int, preference: Preference) -> Unit)
            Performs the given action on each preference in this preference group, providing its sequential index.  | 
        
| operator T? | 
            PreferenceGroup.get(key: CharSequence)
            Returns the preference with   | 
        
| operator Preference | 
            PreferenceGroup.get(index: Int)
            Returns the preference at   | 
        
| Boolean | 
            PreferenceGroup.isEmpty()
            Returns true if this preference group contains no preferences.  | 
        
| Boolean | 
            PreferenceGroup.isNotEmpty()
            Returns true if this preference group contains one or more preferences.  | 
        
| operator MutableIterator<Preference> | 
            PreferenceGroup.iterator()
            Returns a MutableIterator over the preferences in this preference group.  | 
        
| operator Unit | 
            PreferenceGroup.minusAssign(preference: Preference)
            Removes   | 
        
| operator Unit | 
            PreferenceGroup.plusAssign(preference: Preference)
            Adds   | 
        
Extension properties
For PreferenceGroup
| Sequence<Preference> | 
            PreferenceGroup.children()
            Returns a Sequence over the preferences in this preference group.  | 
        
| Int | 
            PreferenceGroup.size()
            Returns the number of preferences in this preference group.  | 
        
androidx.room
Dependency
Groovy
dependencies { implementation "androidx.room:room-ktx:2.8.3" }
Kotlin
dependencies { implementation("androidx.room:room-ktx:2.8.3") }
Extension functions
For RoomDatabase
| suspend R | 
            RoomDatabase.withTransaction(block: suspend () -> R)
            Calls the specified suspending block in a database transaction.  | 
        
androidx.slice.builders
Dependency
Groovy
dependencies { implementation "androidx.slice:slice-builders-ktx:1.0.0-alpha08" }
Kotlin
dependencies { implementation("androidx.slice:slice-builders-ktx:1.0.0-alpha08") }
Extension functions
For GridRowBuilderDsl
| GridRowBuilder | 
            GridRowBuilderDsl.cell(buildCell: CellBuilderDsl.() -> Unit)
            
           | 
        
| GridRowBuilder | 
            GridRowBuilderDsl.seeMoreCell(buildCell: CellBuilderDsl.() -> Unit)
            
           | 
        
For ListBuilderDsl
| ListBuilder | 
            ListBuilderDsl.gridRow(buildGrid: GridRowBuilderDsl.() -> Unit)
            
           | 
        
| ListBuilder | 
            ListBuilderDsl.header(buildHeader: HeaderBuilderDsl.() -> Unit)
            
           | 
        
| ListBuilder | 
            ListBuilderDsl.inputRange(buildInputRange: InputRangeBuilderDsl.() -> Unit)
            
           | 
        
| ListBuilder | 
            ListBuilderDsl.range(buildRange: RangeBuilderDsl.() -> Unit)
            
           | 
        
| ListBuilder | 
            ListBuilderDsl.row(buildRow: RowBuilderDsl.() -> Unit)
            
           | 
        
| ListBuilder | 
            ListBuilderDsl.seeMoreRow(buildRow: RowBuilderDsl.() -> Unit)
            
           | 
        
Top-level functions
| Slice | 
            list(context: Context, uri: Uri, ttl: Long, addRows: ListBuilderDsl.() -> Unit)
            Reduces verbosity required to build a Slice in Kotlin.  | 
        
| SliceAction | 
            tapSliceAction(pendingIntent: PendingIntent, icon: IconCompat, imageMode: Int = ICON_IMAGE, title: CharSequence)
            Factory method to build a tappable SliceAction.  | 
        
| SliceAction | 
            toggleSliceAction(pendingIntent: PendingIntent, icon: IconCompat? = null, title: CharSequence, isChecked: Boolean)
            Factory method to build a toggleable SliceAction.  | 
        
androidx.sqlite.db
Dependency
Groovy
dependencies { implementation "androidx.sqlite:sqlite-ktx:2.6.1" }
Kotlin
dependencies { implementation("androidx.sqlite:sqlite-ktx:2.6.1") }
Extension functions
For SupportSQLiteDatabase
| T | 
            SupportSQLiteDatabase.transaction(exclusive: Boolean = true, body: SupportSQLiteDatabase.() -> T)
            Run body in a transaction marking it as successful if it completes without exception.  | 
        
androidx.work
Dependency
Extension functions
For com.google.common.util.concurrent.ListenableFuture
| suspend R | 
            ListenableFuture<R>.await()
            Awaits for the completion of the ListenableFuture without blocking a thread.  | 
        
For Operation
| suspend Operation.State.SUCCESS! | 
            Operation.await()
            Awaits an Operation without blocking a thread.  | 
        
For Data
| Boolean | 
            Data.hasKeyWithValueOfType(key: String)
            Returns true if the instance of Data has a value corresponding to the given key with an expected type T.  | 
        
For Builder
| OneTimeWorkRequest.Builder | 
            OneTimeWorkRequest.Builder.setInputMerger(@NonNull inputMerger: KClass<out InputMerger>)
            Sets an InputMerger on the OneTimeWorkRequest.Builder.  | 
        
Top-level functions
| OneTimeWorkRequest.Builder | 
            OneTimeWorkRequestBuilder()
            Creates a OneTimeWorkRequest with the given ListenableWorker.  | 
        
| PeriodicWorkRequest.Builder | 
            PeriodicWorkRequestBuilder(repeatInterval: Long, repeatIntervalTimeUnit: TimeUnit)
            Creates a PeriodicWorkRequest.Builder with a given ListenableWorker.  | 
        
| PeriodicWorkRequest.Builder | 
            PeriodicWorkRequestBuilder(repeatInterval: Duration)
            Creates a PeriodicWorkRequest.Builder with a given ListenableWorker.  | 
        
| PeriodicWorkRequest.Builder | 
            PeriodicWorkRequestBuilder(repeatInterval: Long, repeatIntervalTimeUnit: TimeUnit, flexTimeInterval: Long, flexTimeIntervalUnit: TimeUnit)
            Creates a PeriodicWorkRequest.Builder with a given ListenableWorker.  | 
        
| PeriodicWorkRequest.Builder | 
            PeriodicWorkRequestBuilder(repeatInterval: Duration, flexTimeInterval: Duration)
            Creates a PeriodicWorkRequest.Builder with a given ListenableWorker.  | 
        
| Data | 
            workDataOf(vararg pairs: Pair<String, Any?>)
            Converts a list of pairs to a Data object.  | 
        
androidx.work.testing
Dependency
Groovy
dependencies { implementation "androidx.work:work-testing:2.11.0" }
Kotlin
dependencies { implementation("androidx.work:work-testing:2.11.0") }
Top-level functions
| TestListenableWorkerBuilder<W> | 
            TestListenableWorkerBuilder(context: Context, inputData: Data = Data.EMPTY, tags: List<String> = emptyList(), runAttemptCount: Int = 1, triggeredContentUris: List<Uri> = emptyList(), triggeredContentAuthorities: List<String> = emptyList())
            Builds an instance of TestListenableWorkerBuilder.  | 
        
| TestWorkerBuilder<W> | 
            TestWorkerBuilder(context: Context, executor: Executor, inputData: Data = Data.EMPTY, tags: List<String> = emptyList(), runAttemptCount: Int = 1, triggeredContentUris: List<Uri> = emptyList(), triggeredContentAuthorities: List<String> = emptyList())
            Builds an instance of TestWorkerBuilder.  | 
        
com.google.android.play.core.ktx
Dependency
Groovy
dependencies { implementation "com.google.android.play:core-ktx:1.8.1" }
Kotlin
dependencies { implementation("com.google.android.play:core-ktx:1.8.1") }
Extension functions
For com.google.android.play.core.appupdate.AppUpdateManager
| suspend AppUpdateInfo | 
            AppUpdateManager.requestAppUpdateInfo()
            Requests the update availability for the current app  | 
        
| suspend Unit | 
            AppUpdateManager.requestCompleteUpdate()
            For a flexible update flow, triggers the completion of the update.  | 
        
| Flow<AppUpdateResult> | 
            AppUpdateManager.requestUpdateFlow()
            Entry point for monitoring the availability and progress of updates.  | 
        
| Boolean | 
            AppUpdateManager.startUpdateFlowForResult(appUpdateInfo: AppUpdateInfo, appUpdateType: Int, fragment: Fragment, requestCode: Int)
            A version of AppUpdateManager.startUpdateFlowForResult that accepts an AndroidX Fragment for returning the result.  | 
        
For com.google.android.play.core.splitinstall.SplitInstallManager
Extension properties
For com.google.android.play.core.appupdate.AppUpdateInfo
| Int | 
            AppUpdateInfo.installStatus()
            Returns the progress status of the update.  | 
        
| Boolean | 
            AppUpdateInfo.isFlexibleUpdateAllowed()
            Returns   | 
        
| Boolean | 
            AppUpdateInfo.isImmediateUpdateAllowed()
            Returns   | 
        
For com.google.android.play.core.install.InstallState
| Boolean | 
            InstallState.hasTerminalStatus()
            This signifies that this is a terminal status (there will be no more updates) and should be handled accordingly (success, cancellation or failure).  | 
        
| Int | 
            InstallState.installErrorCode()
            Returns the error code for an install, or {@link InstallErrorCode#NO_ERROR}.  | 
        
| Int | 
            InstallState.installStatus()
            Returns the status of an install.  | 
        
| String! | 
            InstallState.packageName()
            Returns the package name for the app being installed.  | 
        
For com.google.android.play.core.splitinstall.SplitInstallSessionState
| Long | 
            SplitInstallSessionState.bytesDownloaded()
            The bytes downloaded by this update.  | 
        
| Int | 
            SplitInstallSessionState.errorCode()
            The error code of this update.  | 
        
| Boolean | 
            SplitInstallSessionState.hasTerminalStatus()
            Signifies that this update is terminal, meaning there will be no more updates for this session.  | 
        
| List<String> | 
            SplitInstallSessionState.languages()
            The languages included by this update.  | 
        
| List<String> | 
            SplitInstallSessionState.moduleNames()
            The modules included by this update.  | 
        
| Int | 
            SplitInstallSessionState.sessionId()
            The session id of this update.  | 
        
| Int | 
            SplitInstallSessionState.status()
            The status code of this update.  | 
        
| Long | 
            SplitInstallSessionState.totalBytesToDownload()
            The total bytes to download by this update.  | 
        
Top-level functions
| SplitInstallStateUpdatedListener | 
            SplitInstallStateUpdatedListener(onRequiresConfirmation: (SplitInstallSessionState) -> Unit, onInstalled: (SplitInstallSessionState) -> Unit, onFailed: (SplitInstallSessionState) -> Unit = {}, onPending: (SplitInstallSessionState) -> Unit = {}, onDownloaded: (SplitInstallSessionState) -> Unit = {}, onDownloading: (SplitInstallSessionState) -> Unit = {}, onInstalling: (SplitInstallSessionState) -> Unit = {}, onCanceling: (SplitInstallSessionState) -> Unit = {}, onCanceled: (SplitInstallSessionState) -> Unit = {}, onNonTerminalStatus: (SplitInstallSessionState) -> Unit = {}, onTerminalStatus: (SplitInstallSessionState) -> Unit = {})
            A convenience function for creating a SplitInstallStateUpdatedListener.  |