androidx.activity
依赖项
Groovy
dependencies { implementation "androidx.activity:activity-ktx:1.9.2" }
Kotlin
dependencies { implementation("androidx.activity:activity-ktx:1.9.2") }
扩展函数
对于 OnBackPressedDispatcher
OnBackPressedCallback |
OnBackPressedDispatcher.addCallback(owner: LifecycleOwner? = null, enabled: Boolean = true, onBackPressed: OnBackPressedCallback.() -> Unit)
创建一个新的 OnBackPressedCallback 并将其添加到 onBackPressed 中,在 OnBackPressedCallback.handleOnBackPressed 中调用它。 |
对于 ComponentActivity
Lazy<VM> |
ComponentActivity.viewModels(noinline factoryProducer: () -> ViewModelProvider.Factory = null)
返回一个 Lazy 代理来访问 ComponentActivity 的 ViewModel,如果指定了 factoryProducer,那么它返回的 ViewModelProvider.Factory 将用于第一次创建 ViewModel。 |
androidx.benchmark
依赖项
Groovy
dependencies { implementation "androidx.benchmark:benchmark-junit4:1.3.0" }
Kotlin
dependencies { implementation("androidx.benchmark:benchmark-junit4:1.3.0") }
顶层函数
Unit |
beginTraceSection(sectionName: String)
|
Unit |
endTraceSection()
|
androidx.benchmark.junit4
依赖项
Groovy
dependencies { implementation "androidx.benchmark:benchmark-junit4:1.3.0" }
Kotlin
dependencies { implementation("androidx.benchmark:benchmark-junit4:1.3.0") }
扩展函数
对于 BenchmarkRule
Unit |
BenchmarkRule.measureRepeated(crossinline block: BenchmarkRule.Scope.() -> Unit)
对一段代码进行基准测试。 |
androidx.collection
依赖项
Groovy
dependencies { implementation "androidx.collection:collection-ktx:1.4.3" }
Kotlin
dependencies { implementation("androidx.collection:collection-ktx:1.4.3") }
扩展函数
对于 LongSparseArray
operator Boolean |
LongSparseArray<T>.contains(key: Long)
如果集合包含 key,则返回 true。 |
Unit |
LongSparseArray<T>.forEach(action: (key: Long, value: T) -> Unit)
对每个键值对执行给定的 action。 |
T |
LongSparseArray<T>.getOrDefault(key: Long, defaultValue: T)
返回与 key 对应的值,如果不存在则返回 defaultValue。 |
T |
LongSparseArray<T>.getOrElse(key: Long, defaultValue: () -> T)
返回与 key 对应的值,如果不存在则返回 defaultValue 的结果。 |
布尔值 |
LongSparseArray<T>.isNotEmpty()
如果集合包含元素,则返回 true。 |
LongIterator |
LongSparseArray<T>.keyIterator()
返回集合键的迭代器。 |
operator LongSparseArray<T> |
LongSparseArray<T>.plus(other: LongSparseArray<T>)
通过添加或替换来自 other 的条目来创建一个新的集合。 |
布尔值 |
LongSparseArray<T>.remove(key: Long, value: T)
|
operator Unit |
LongSparseArray<T>.set(key: Long, value: T)
允许使用索引运算符在集合中存储值。 |
Iterator<T> |
LongSparseArray<T>.valueIterator()
返回集合值的迭代器。 |
对于 SparseArrayCompat
operator Boolean |
SparseArrayCompat<T>.contains(key: Int)
如果集合包含 key,则返回 true。 |
Unit |
SparseArrayCompat<T>.forEach(action: (key: Int, value: T) -> Unit)
对每个键值对执行给定的 action。 |
T |
SparseArrayCompat<T>.getOrDefault(key: Int, defaultValue: T)
返回与 key 对应的值,如果不存在则返回 defaultValue。 |
T |
SparseArrayCompat<T>.getOrElse(key: Int, defaultValue: () -> T)
返回与 key 对应的值,如果不存在则返回 defaultValue 的结果。 |
布尔值 |
SparseArrayCompat<T>.isNotEmpty()
如果集合包含元素,则返回 true。 |
IntIterator |
SparseArrayCompat<T>.keyIterator()
返回集合键的迭代器。 |
operator SparseArrayCompat<T> |
SparseArrayCompat<T>.plus(other: SparseArrayCompat<T>)
通过添加或替换来自 other 的条目来创建一个新的集合。 |
布尔值 |
SparseArrayCompat<T>.remove(key: Int, value: T)
|
operator Unit |
SparseArrayCompat<T>.set(key: Int, value: T)
允许使用索引运算符在集合中存储值。 |
Iterator<T> |
SparseArrayCompat<T>.valueIterator()
返回集合值的迭代器。 |
扩展属性
对于 LongSparseArray
Int |
LongSparseArray<T>.size()
返回集合中键值对的数量。 |
对于 SparseArrayCompat
Int |
SparseArrayCompat<T>.size()
返回集合中键值对的数量。 |
顶层函数
ArrayMap<K, V> |
arrayMapOf()
返回一个新的空 ArrayMap。 |
ArrayMap<K, V> |
arrayMapOf(vararg pairs: Pair<K, V>)
返回一个新的 ArrayMap,其中包含指定的内容,这些内容以键值对列表的形式给出,其中第一个组件是键,第二个组件是值。 |
ArraySet<T> |
arraySetOf()
返回一个新的空 ArraySet。 |
ArraySet<T> |
arraySetOf(vararg values: T)
返回一个新的 ArraySet,其中包含指定的内容。 |
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 = { _, _, _, _ -> })
创建具有给定参数的 LruCache。 |
androidx.core.animation
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 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 = {})
使用提供的操作将监听器添加到此 Animator 中。 |
AnimatorPauseListener |
Animator.addPauseListener(crossinline onResume: (animator: Animator) -> Unit = {}, crossinline onPause: (animator: Animator) -> Unit = {})
使用提供的操作将暂停和恢复监听器添加到此 Animator 中。 |
AnimatorListener |
Animator.doOnCancel(crossinline action: (animator: Animator) -> Unit)
添加将在动画被取消时调用的操作。 |
AnimatorListener |
Animator.doOnEnd(crossinline action: (animator: Animator) -> Unit)
添加将在动画结束后调用的操作。 |
AnimatorPauseListener |
Animator.doOnPause(crossinline action: (animator: Animator) -> Unit)
添加将在动画被暂停时调用的操作。 |
AnimatorListener |
Animator.doOnRepeat(crossinline action: (animator: Animator) -> Unit)
添加将在动画重复时调用的操作。 |
AnimatorPauseListener |
Animator.doOnResume(crossinline action: (animator: Animator) -> Unit)
添加将在动画在暂停后恢复时调用的操作。 |
AnimatorListener |
Animator.doOnStart(crossinline action: (animator: Animator) -> Unit)
添加将在动画开始时调用的操作。 |
androidx.core.content
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 android.content.Context
T? |
Context.getSystemService()
通过类返回系统级服务的句柄。 |
Unit |
Context.withStyledAttributes(set: AttributeSet? = null, attrs: IntArray, @AttrRes defStyleAttr: Int = 0, @StyleRes defStyleRes: Int = 0, block: TypedArray.() -> Unit)
在 TypedArray 接收器上执行 block。 |
Unit |
Context.withStyledAttributes(@StyleRes resourceId: Int, attrs: IntArray, block: TypedArray.() -> Unit)
在 TypedArray 接收器上执行 block。 |
对于 android.content.SharedPreferences
Unit |
SharedPreferences.edit(: Boolean = false, : Editor.() -> Unit)
|
顶层函数
ContentValues |
contentValuesOf(vararg pairs: Pair<String, Any?>)
返回一个新的 ContentValues,其中包含给定的键值对作为元素。 |
androidx.core.content.res
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 android.content.res.TypedArray
androidx.core.database
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
用于 android.database.Cursor
ByteArray? |
Cursor.getBlobOrNull(index: Int)
将请求列的值作为可空的字节数组返回。 |
Double? |
Cursor.getDoubleOrNull(index: Int)
将请求列的值作为可空的双精度浮点数返回。 |
Float? |
Cursor.getFloatOrNull(index: Int)
将请求列的值作为可空的单精度浮点数返回。 |
Int? |
Cursor.getIntOrNull(index: Int)
将请求列的值作为可空的整数返回。 |
Long? |
Cursor.getLongOrNull(index: Int)
将请求列的值作为可空的 long 值返回。 |
Short? |
Cursor.getShortOrNull(index: Int)
将请求列的值作为可空的短整型值返回。 |
String? |
Cursor.getStringOrNull(index: Int)
将请求列的值作为可空的字符串返回。 |
androidx.core.database.sqlite
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
用于 android.database.sqlite.SQLiteDatabase
T |
SQLiteDatabase.transaction(exclusive: Boolean = true, body: SQLiteDatabase.() -> T)
在事务中运行 body,如果它在没有异常的情况下完成,则将其标记为成功。 |
androidx.core.graphics
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
用于 android.graphics.Bitmap
Bitmap |
Bitmap.applyCanvas(block: Canvas.() -> Unit)
|
operator Boolean |
Bitmap.contains(p: Point)
如果指定点位于位图内,则返回 true。 |
operator Boolean |
Bitmap.contains(p: PointF)
如果指定点位于位图内,则返回 true。 |
operator Int |
Bitmap.get(x: Int, y: Int)
返回指定位置处像素的值。 |
Bitmap |
Bitmap.scale(width: Int, height: Int, filter: Boolean = true)
尽可能地从该位图创建新的位图,并进行缩放。 |
operator Unit |
Bitmap.set(x: Int, y: Int, color: Int)
将指定的 颜色值 写入位图(假设它是可变的)在指定的 |
对于 android.graphics.Canvas
对于 android.graphics.Color
operator Float |
Color.component1()
返回颜色的第一个分量。 |
operator Float |
Color.component2()
返回颜色的第二个分量。 |
operator Float |
Color.component3()
返回颜色的第三个分量。 |
operator Float |
Color.component4()
返回颜色的第四个分量。 |
infix Color! |
Color.convertTo(colorSpace: Named)
将接收器颜色转换为指定颜色空间中的颜色。 |
infix Color! |
Color.convertTo(colorSpace: ColorSpace)
将接收器颜色转换为指定颜色空间中的颜色。 |
operator Color |
Color.plus(c: Color)
将两个半透明颜色复合在一起。 |
对于 android.graphics.ImageDecoder.Source
Bitmap |
Source.decodeBitmap(crossinline action: ImageDecoder.(info: ImageInfo, source: Source) -> Unit)
从 Source 创建 Bitmap。 |
Drawable |
Source.decodeDrawable(crossinline action: ImageDecoder.(info: ImageInfo, source: Source) -> Unit)
从 Source 创建 Drawable。 |
对于 android.graphics.Matrix
operator Matrix |
Matrix.times(m: Matrix)
将此 Matrix 与另一个矩阵相乘,并将结果作为新矩阵返回。 |
FloatArray |
Matrix.values()
将此 Matrix 的 9 个值作为新的浮点型数组返回。 |
对于 android.graphics.Paint
布尔值 |
Paint.setBlendMode(blendModeCompat: BlendModeCompat?)
便捷方法,用于以向后兼容的方式配置 Paint 的 BlendMode。 |
对于 android.graphics.Path
infix Path |
Path.and(p: Path)
将两个路径的交集作为新的 Path 返回。 |
Iterable<PathSegment> |
Path.flatten(error: Float = 0.5f)
使用一系列线段来扁平化(或近似)Path。 |
operator Path |
Path.minus(p: Path)
返回两个路径的差值,作为新的 Path。 |
infix Path |
Path.or(p: Path)
返回两个路径的并集,作为新的 Path。 |
operator Path |
Path.plus(p: Path)
返回两个路径的并集,作为新的 Path。 |
infix Path |
Path.xor(p: Path)
返回两个路径的并集减去交集,作为新的 Path。 |
对于 android.graphics.Picture
Picture |
Picture.record(width: Int, height: Int, block: Canvas.() -> Unit)
创建一个新的 Canvas 来记录此 Picture 中的命令,在新建的画布上执行指定的 block,并返回此 Picture。 |
对于 android.graphics.Point
operator Int |
Point.component1()
返回此点的 x 坐标。 |
operator Int |
Point.component2()
返回此点的 y 坐标。 |
operator Point |
Point.minus(p: Point)
将此点偏移指定点的负值,并将结果作为新点返回。 |
operator Point |
Point.minus(xy: Int)
将此点偏移指定值(在 X 和 Y 轴上)的负值,并将结果作为新点返回。 |
operator Point |
Point.plus(p: Point)
将此点偏移指定点,并将结果作为新点返回。 |
operator Point |
Point.plus(xy: Int)
将此点偏移指定值(在 X 和 Y 轴上),并将结果作为新点返回。 |
PointF |
Point.toPointF()
返回此点的 PointF 表示形式。 |
operator Point |
Point.unaryMinus()
返回一个表示此点负值的新点。 |
对于 android.graphics.PointF
operator Float |
PointF.component1()
返回此点的 x 坐标。 |
operator Float |
PointF.component2()
返回此点的 y 坐标。 |
operator PointF |
PointF.minus(p: PointF)
将此点偏移指定点的负值,并将结果作为新点返回。 |
operator PointF |
PointF.minus(xy: Float)
将此点偏移指定值(在 X 和 Y 轴上)的负值,并将结果作为新点返回。 |
operator PointF |
PointF.plus(p: PointF)
将此点偏移指定点,并将结果作为新点返回。 |
operator PointF |
PointF.plus(xy: Float)
将此点偏移指定值(在 X 和 Y 轴上),并将结果作为新点返回。 |
Point |
PointF.toPoint()
返回此点的 Point 表示形式。 |
operator PointF |
PointF.unaryMinus()
返回一个表示此点负值的新点。 |
对于 android.graphics.PorterDuff.Mode
PorterDuffColorFilter |
Mode.toColorFilter(color: Int)
创建一个新的 PorterDuffColorFilter,它使用此 PorterDuff.Mode 作为 alpha 合成或混合模式,以及指定的 color。 |
PorterDuffXfermode |
Mode.toXfermode()
创建一个新的 PorterDuffXfermode,它使用此 PorterDuff.Mode 作为 alpha 合成或混合模式。 |
对于 android.graphics.Rect
infix Rect |
Rect.and(r: Rect)
返回两个矩形的交集,作为新矩形。 |
operator Int |
Rect.component1()
返回 "left",矩形的第一个组件。 |
operator Int |
Rect.component2()
返回 "top",矩形的第二个组件。 |
operator Int |
Rect.component3()
返回 "right",矩形的第三个组件。 |
operator Int |
Rect.component4()
返回 "bottom",矩形的第四个组件。 |
operator Boolean |
Rect.contains(p: Point)
如果指定的点在矩形内,则返回 true。 |
operator Region |
Rect.minus(r: Rect)
返回此矩形与指定矩形之间的差值,作为新区域。 |
operator Rect |
Rect.minus(xy: Int)
返回一个表示此矩形偏移指定值(在 X 和 Y 轴上)负值的新矩形。 |
operator Rect |
Rect.minus(xy: Point)
返回一个表示此矩形偏移指定点的负值的新矩形。 |
infix Rect |
Rect.or(r: Rect)
返回两个矩形的并集,作为新矩形。 |
operator Rect |
Rect.plus(r: Rect)
执行此矩形与指定矩形的并集,并将结果作为新矩形返回。 |
operator Rect |
Rect.plus(xy: Int)
返回一个新的矩形,代表此矩形在 X 轴和 Y 轴上偏移指定量。 |
operator Rect |
Rect.plus(xy: Point)
返回一个新的矩形,代表此矩形偏移指定点。 |
operator Rect |
Rect.times(factor: Int)
返回一个新的矩形,代表此矩形的每个组件都按 factor 缩放。 |
RectF |
Rect.toRectF()
返回此矩形的 RectF 表示。 |
Region |
Rect.toRegion()
返回此矩形的 Region 表示。 |
infix Region |
Rect.xor(r: Rect)
返回两个矩形的并集减去交集,作为新的区域。 |
对于 android.graphics.RectF
infix RectF |
RectF.and(r: RectF)
返回两个矩形的交集,作为新矩形。 |
operator Float |
RectF.component1()
返回 "left",矩形的第一个组件。 |
operator Float |
RectF.component2()
返回 "top",矩形的第二个组件。 |
operator Float |
RectF.component3()
返回 "right",矩形的第三个组件。 |
operator Float |
RectF.component4()
返回 "bottom",矩形的第四个组件。 |
operator Boolean |
RectF.contains(p: PointF)
如果指定的点在矩形内,则返回 true。 |
operator Region |
RectF.minus(r: RectF)
返回此矩形与指定矩形之间的差值,作为新区域。 |
operator RectF |
RectF.minus(xy: Float)
返回一个表示此矩形偏移指定值(在 X 和 Y 轴上)负值的新矩形。 |
operator RectF |
RectF.minus(xy: PointF)
返回一个表示此矩形偏移指定点的负值的新矩形。 |
infix RectF |
RectF.or(r: RectF)
返回两个矩形的并集,作为新矩形。 |
operator RectF |
RectF.plus(r: RectF)
执行此矩形与指定矩形的并集,并将结果作为新矩形返回。 |
operator RectF |
RectF.plus(xy: Float)
返回一个新的矩形,代表此矩形在 X 轴和 Y 轴上偏移指定量。 |
operator RectF |
RectF.plus(xy: PointF)
返回一个新的矩形,代表此矩形偏移指定点。 |
operator RectF |
RectF.times(factor: Int)
返回一个新的矩形,代表此矩形的每个组件都按 factor 缩放。 |
operator RectF |
RectF.times(factor: Float)
返回一个新的矩形,代表此矩形的每个组件都按 factor 缩放。 |
Rect |
RectF.toRect()
返回此矩形的 Rect 表示。 |
Region |
RectF.toRegion()
返回此矩形的 Region 表示。 |
RectF |
RectF.transform(m: Matrix)
使用提供的 Matrix 原地变换此矩形,并返回此矩形。 |
infix Region |
RectF.xor(r: RectF)
返回两个矩形的并集减去交集,作为新的区域。 |
对于 android.graphics.Region
infix Region |
Region.and(r: Rect)
返回此区域与指定 Rect 的交集作为新区域。 |
infix Region |
Region.and(r: Region)
返回此区域与指定区域的交集作为新区域。 |
operator Boolean |
Region.contains(p: Point)
如果区域包含指定的 Point,则返回 true。 |
Unit |
Region.forEach(action: (rect: Rect) -> Unit)
对此区域中的每个矩形执行给定的操作。 |
operator Iterator<Rect> |
Region.iterator()
返回此区域中矩形的 Iterator。 |
operator Region |
Region.minus(r: Rect)
返回此区域与指定 Rect 的差集作为新区域。 |
operator Region |
Region.minus(r: Region)
返回此区域与指定区域的差集作为新区域。 |
operator Region |
Region.not()
返回此区域的否定作为新区域。 |
infix Region |
Region.or(r: Rect)
返回此区域与指定 Rect 的并集作为新区域。 |
infix Region |
Region.or(r: Region)
返回该区域与指定区域的并集作为新的区域。 |
operator Region |
Region.plus(r: Rect)
返回此区域与指定 Rect 的并集作为新区域。 |
operator Region |
Region.plus(r: Region)
返回该区域与指定区域的并集作为新的区域。 |
operator Region |
Region.unaryMinus()
返回此区域的否定作为新区域。 |
infix Region |
Region.xor(r: Rect)
返回该区域与指定 Rect 的并集减去交集作为新的区域。 |
infix Region |
Region.xor(r: Region)
返回该区域与指定区域的并集减去交集作为新的区域。 |
对于 android.graphics.Shader
Unit |
Shader.transform(block: Matrix.() -> Unit)
将指定的 block 包含在对 Shader.getLocalMatrix 和 Shader.setLocalMatrix 的调用中。 |
对于 kotlin.Int
operator Int |
Int.component1()
返回颜色整数的 alpha 分量。 |
operator Int |
Int.component2()
返回颜色整数的 red 分量。 |
operator Int |
Int.component3()
返回颜色整数的 green 分量。 |
operator Int |
Int.component4()
返回颜色整数的 blue 分量。 |
infix Long |
Int.convertTo(colorSpace: Named)
将接收到的颜色整数转换为指定颜色空间中的颜色长整数。 |
infix Long |
Int.convertTo(colorSpace: ColorSpace)
将接收到的颜色整数转换为指定颜色空间中的颜色长整数。 |
颜色 |
Int.toColor()
从颜色整数创建一个新的 Color 实例。 |
长整数 |
Int.toColorLong()
|
对于 kotlin.Long
operator Float |
Long.component1()
返回颜色的第一个分量。 |
operator Float |
Long.component2()
返回颜色的第二个分量。 |
operator Float |
Long.component3()
返回颜色的第三个分量。 |
operator Float |
Long.component4()
返回颜色的第四个分量。 |
infix Long |
Long.convertTo(colorSpace: Named)
将接收到的颜色长整数转换为指定颜色空间中的颜色长整数。 |
infix Long |
Long.convertTo(colorSpace: ColorSpace)
将接收到的颜色长整数转换为指定颜色空间中的颜色长整数。 |
颜色 |
Long.toColor()
|
Int |
Long.toColorInt()
|
对于 kotlin.String
Int |
String.toColorInt()
|
扩展属性
对于 kotlin.Int
Int |
Int.alpha()
返回颜色整数的 alpha 分量。 |
Int |
Int.blue()
返回颜色整数的 blue 分量。 |
Int |
Int.green()
返回颜色整数的 green 分量。 |
Float |
Int.luminance()
返回颜色整数的相对亮度,假设使用 sRGB 编码。 |
Int |
Int.red()
返回颜色整数的 red 分量。 |
对于 kotlin.Long
Float |
Long.alpha()
返回颜色长整数的 alpha 分量。 |
Float |
Long.blue()
返回颜色长整数的 blue 分量。 |
颜色空间 |
Long.colorSpace()
返回指定颜色长整数中编码的颜色空间。 |
Float |
Long.green()
返回颜色长整数的 green 分量。 |
布尔值 |
Long.isSrgb()
指示颜色是否在 sRGB 颜色空间中。 |
布尔值 |
Long.isWideGamut()
指示颜色是否在 广色域 颜色空间中。 |
Float |
Long.luminance()
返回颜色的相对亮度。 |
Float |
Long.red()
返回颜色长整数的 red 分量。 |
顶层函数
Bitmap |
createBitmap(width: Int, height: Int, config: Config = Bitmap.Config.ARGB_8888)
|
Bitmap |
createBitmap(width: Int, height: Int, config: Config = Bitmap.Config.ARGB_8888, hasAlpha: Boolean = true, colorSpace: ColorSpace = ColorSpace.get(ColorSpace.Named.SRGB))
|
矩阵 |
rotationMatrix(degrees: Float, px: Float = 0.0f, py: Float = 0.0f)
|
矩阵 |
scaleMatrix(sx: Float = 1.0f, sy: Float = 1.0f)
|
矩阵 |
translationMatrix(tx: Float = 0.0f, ty: Float = 0.0f)
|
androidx.core.graphics.drawable
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
用于 android.graphics.Bitmap
图标 |
Bitmap.toAdaptiveIcon()
|
BitmapDrawable |
Bitmap.toDrawable(resources: Resources)
从此 Bitmap 创建一个 BitmapDrawable。 |
图标 |
Bitmap.toIcon()
|
对于 android.graphics.Color
ColorDrawable |
Color.toDrawable()
从此 Color(通过 Color.toArgb)创建一个 ColorDrawable。 |
对于 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)
更新此 drawable 的边界。 |
对于 android.net.Uri
图标 |
Uri.toIcon()
|
对于 kotlin.ByteArray
图标 |
ByteArray.toIcon()
|
对于 kotlin.Int
ColorDrawable |
Int.toDrawable()
从此颜色值创建一个 ColorDrawable。 |
androidx.core.location
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 android.location.Location
operator Double |
Location.component1()
返回此 Location 的纬度。 |
operator Double |
Location.component2()
返回此 Location 的经度。 |
androidx.core.net
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 android.net.Uri
文件 |
Uri.toFile()
|
对于 java.io.File
Uri |
File.toUri()
从给定文件创建一个 Uri。 |
对于 kotlin.String
Uri |
String.toUri()
从给定的编码 URI 字符串创建一个 Uri。 |
androidx.core.os
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 android.os.Handler
Runnable |
Handler.postAtTime(uptimeMillis: Long, token: Any? = null, crossinline action: () -> Unit)
Handler.postAtTime 的版本重新排序了参数,允许操作放置在括号之外。 |
Runnable |
Handler.postDelayed(delayInMillis: Long, token: Any? = null, crossinline action: () -> Unit)
Handler.postDelayed 的版本,它重新排序了参数,允许将操作放在括号之外。 |
顶层函数
Bundle |
bundleOf(vararg pairs: Pair<String, Any?>)
返回一个新的 Bundle,其中包含给定的键/值对作为元素。 |
PersistableBundle |
persistableBundleOf(vararg pairs: Pair<String, Any?>)
返回一个新的 PersistableBundle,其中包含给定的键/值对作为元素。 |
T |
trace(sectionName: String, block: () -> T)
使用 Trace.beginSection (使用提供的 sectionName)和 Trace.endSection 包装指定的 block。 |
androidx.core.text
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 android.text.Spannable
Unit |
Spannable.clearSpans()
从此文本中清除所有跨度。 |
operator Unit |
Spannable.set(start: Int, end: Int, span: Any)
|
operator Unit |
Spannable.set(range: IntRange, span: Any)
|
对于 android.text.SpannableStringBuilder
对于 android.text.Spanned
Array<out T> |
Spanned.getSpans(start: Int = 0, end: Int = length)
获取所有为 T 实例的跨度。 |
字符串 |
Spanned.toHtml(option: Int = TO_HTML_PARAGRAPH_LINES_CONSECUTIVE)
从此 Spanned 中的跨度返回 HTML 字符串。 |
对于 kotlin.CharSequence
布尔值 |
CharSequence.isDigitsOnly()
返回给定的 CharSequence 是否仅包含数字。 |
Spannable |
CharSequence.toSpannable()
从 CharSequence 返回一个新的 Spannable,如果它已经是 SpannableString 的实例,则返回源本身。 |
Spanned |
CharSequence.toSpanned()
从 CharSequence 返回一个新的 Spanned,如果它已经是 SpannedString 的实例,则返回源本身。 |
Int |
CharSequence.trimmedLength()
返回指定的 CharSequence 的长度,如果空格和 ASCII 控制字符从开头和结尾被修剪,就像 String.trim 一样。 |
对于 kotlin.String
字符串 |
String.htmlEncode()
对字符串进行 HTML 编码。 |
Spanned |
String.parseAsHtml(flags: Int = FROM_HTML_MODE_LEGACY, imageGetter: ImageGetter? = null, tagHandler: TagHandler? = null)
从将此字符串解析为 HTML 返回 Spanned。 |
扩展属性
对于 java.util.Locale
Int |
Locale.layoutDirection()
返回给定区域设置的布局方向。 |
顶层函数
SpannedString |
buildSpannedString(builderAction: SpannableStringBuilder.() -> Unit)
通过使用提供的 builderAction 填充新创建的 SpannableStringBuilder,然后将其转换为 SpannedString 来构建新字符串。 |
androidx.core.transition
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 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 = {})
使用提供的操作将侦听器添加到此 Transition。 |
TransitionListener |
Transition.doOnCancel(crossinline action: (transition: Transition) -> Unit)
添加一个在该过渡被取消时调用的操作。 |
TransitionListener |
Transition.doOnEnd(crossinline action: (transition: Transition) -> Unit)
添加一个在该过渡结束后调用的操作。 |
TransitionListener |
Transition.doOnPause(crossinline action: (transition: Transition) -> Unit)
添加一个在该过渡被暂停时调用的操作。 |
TransitionListener |
Transition.doOnResume(crossinline action: (transition: Transition) -> Unit)
添加一个在该过渡在暂停后恢复时调用的操作。 |
TransitionListener |
Transition.doOnStart(crossinline action: (transition: Transition) -> Unit)
添加一个在该过渡开始时调用的操作。 |
androidx.core.util
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 android.util.AtomicFile
字节数组 |
AtomicFile.readBytes()
将该文件的所有内容作为字节数组获取。 |
字符串 |
AtomicFile.readText(charset: Charset = Charsets.UTF_8)
使用 UTF-8 或指定的 charset 将该文件的所有内容作为字符串获取。 |
Unit |
AtomicFile.tryWrite(block: (out: FileOutputStream) -> Unit)
对该文件执行 block 中的写入操作。 |
Unit |
AtomicFile.writeBytes(array: ByteArray)
将该文件的内容设置为 array 中的字节。 |
Unit |
AtomicFile.writeText(text: String, charset: Charset = Charsets.UTF_8)
|
对于 android.util.LongSparseArray
operator Boolean |
LongSparseArray<T>.contains(key: Long)
如果集合包含 key,则返回 true。 |
布尔值 |
LongSparseArray<T>.containsKey(key: Long)
如果集合包含 key,则返回 true。 |
布尔值 |
LongSparseArray<T>.containsValue(value: T)
如果集合包含 value,则返回 true。 |
Unit |
LongSparseArray<T>.forEach(action: (key: Long, value: T) -> Unit)
对每个键值对执行给定的 action。 |
T |
LongSparseArray<T>.getOrDefault(key: Long, defaultValue: T)
返回与 key 对应的值,如果不存在,则返回 defaultValue。 |
T |
LongSparseArray<T>.getOrElse(key: Long, defaultValue: () -> T)
返回与 key 对应的值,如果不存在,则返回 defaultValue。 |
布尔值 |
LongSparseArray<T>.isEmpty()
如果集合不包含任何元素,则返回 true。 |
布尔值 |
LongSparseArray<T>.isNotEmpty()
如果集合包含元素,则返回 true。 |
LongIterator |
LongSparseArray<T>.keyIterator()
返回集合键的迭代器。 |
operator LongSparseArray<T> |
LongSparseArray<T>.plus(other: LongSparseArray<T>)
通过添加或替换来自 other 的条目,创建一个新的集合。 |
Unit |
LongSparseArray<T>.putAll(other: LongSparseArray<T>)
通过添加或替换来自 other 的条目来更新此集合。 |
布尔值 |
LongSparseArray<T>.remove(key: Long, value: T)
|
operator Unit |
LongSparseArray<T>.set(key: Long, value: T)
允许使用索引运算符在集合中存储值。 |
Iterator<T> |
LongSparseArray<T>.valueIterator()
返回集合值的迭代器。 |
对于 android.util.Pair
operator F |
Pair<F, S>.component1()
返回该对的第一个组成部分。 |
operator S |
Pair<F, S>.component2()
返回该对的第二个组成部分。 |
Pair<F, S> |
Pair<F, S>.toKotlinPair()
将此 Pair 返回为 kotlin.Pair。 |
对于 android.util.Range
infix Range<T> |
Range<T>.and(other: Range<T>)
返回此范围与 other 的交集。 |
operator Range<T> |
Range<T>.plus(value: T)
返回包含此范围和 value 的最小范围。 |
operator Range<T> |
Range<T>.plus(other: Range<T>)
返回包含此范围和 other 的最小范围。 |
ClosedRange<T> |
Range<T>.toClosedRange()
将此 Range 返回为 ClosedRange。 |
对于 android.util.Size
operator Int |
Size.component1()
返回 "width",此 Size 的第一个组成部分。 |
operator Int |
Size.component2()
返回 "height",此 Size 的第二个组成部分。 |
对于 android.util.SizeF
operator Float |
SizeF.component1()
返回 "width",此 SizeF 的第一个组成部分。 |
operator Float |
SizeF.component2()
返回 "height",此 SizeF 的第二个组成部分。 |
对于 android.util.SparseArray
operator Boolean |
SparseArray<T>.contains(key: Int)
如果集合包含 key,则返回 true。 |
布尔值 |
SparseArray<T>.containsKey(key: Int)
如果集合包含 key,则返回 true。 |
布尔值 |
SparseArray<T>.containsValue(value: T)
如果集合包含 value,则返回 true。 |
Unit |
SparseArray<T>.forEach(action: (key: Int, value: T) -> Unit)
对每个键/值条目执行给定的 action。 |
T |
SparseArray<T>.getOrDefault(key: Int, defaultValue: T)
返回对应于 key 的值,或者当不存在时返回 defaultValue。 |
T |
SparseArray<T>.getOrElse(key: Int, defaultValue: () -> T)
返回对应于 key 的值,或者当不存在时从 defaultValue 返回。 |
布尔值 |
SparseArray<T>.isEmpty()
如果集合不包含任何元素,则返回 true。 |
布尔值 |
SparseArray<T>.isNotEmpty()
如果集合包含元素,则返回 true。 |
IntIterator |
SparseArray<T>.keyIterator()
返回集合键的迭代器。 |
operator SparseArray<T> |
SparseArray<T>.plus(other: SparseArray<T>)
通过添加或替换来自 other 的条目来创建一个新的集合。 |
Unit |
SparseArray<T>.putAll(other: SparseArray<T>)
通过添加或替换来自 other 的条目来更新此集合。 |
布尔值 |
SparseArray<T>.remove(key: Int, value: T)
|
operator Unit |
SparseArray<T>.set(key: Int, value: T)
允许使用索引运算符在集合中存储值。 |
Iterator<T> |
SparseArray<T>.valueIterator()
返回集合值的迭代器。 |
对于 android.util.SparseBooleanArray
对于 android.util.SparseIntArray
operator Boolean |
SparseIntArray.contains(key: Int)
如果集合包含 key,则返回 true。 |
布尔值 |
SparseIntArray.containsKey(key: Int)
如果集合包含 key,则返回 true。 |
布尔值 |
SparseIntArray.containsValue(value: Int)
如果集合包含 value,则返回 true。 |
Unit |
SparseIntArray.forEach(action: (key: Int, value: Int) -> Unit)
对每个键值对执行给定的 action。 |
Int |
SparseIntArray.getOrDefault(key: Int, defaultValue: Int)
返回与 key 对应的值,如果不存在则返回 defaultValue。 |
Int |
SparseIntArray.getOrElse(key: Int, defaultValue: () -> Int)
返回与 key 对应的值,如果不存在则从 defaultValue 返回。 |
布尔值 |
SparseIntArray.isEmpty()
如果集合不包含任何元素,则返回 true。 |
布尔值 |
SparseIntArray.isNotEmpty()
如果集合包含元素,则返回 true。 |
IntIterator |
SparseIntArray.keyIterator()
返回集合键的迭代器。 |
operator SparseIntArray |
SparseIntArray.plus(other: SparseIntArray)
通过添加或替换来自 other 的条目来创建一个新的集合。 |
Unit |
SparseIntArray.putAll(other: SparseIntArray)
通过添加或替换来自 other 的条目来更新此集合。 |
布尔值 |
SparseIntArray.remove(key: Int, value: Int)
|
operator Unit |
SparseIntArray.set(key: Int, value: Int)
允许使用索引运算符在集合中存储值。 |
IntIterator |
SparseIntArray.valueIterator()
返回集合值的迭代器。 |
对于 android.util.SparseLongArray
对于 kotlin.Double
一半 |
Double.toHalf()
|
对于 kotlin.Float
一半 |
Float.toHalf()
|
对于 kotlin.Pair
Pair<F, S> |
Pair<F, S>.toAndroidPair()
将此 kotlin.Pair 作为 Android Pair 返回。 |
对于 kotlin.Short
一半 |
Short.toHalf()
|
对于 kotlin.String
一半 |
String.toHalf()
|
对于 kotlin.ranges.ClosedRange
Range<T> |
ClosedRange<T>.toRange()
将此 ClosedRange 作为 Range 返回。 |
扩展属性
对于 android.util.LongSparseArray
Int |
LongSparseArray<T>.size()
返回集合中键值对的数量。 |
对于 android.util.SparseArray
Int |
SparseArray<T>.size()
返回集合中键值对的数量。 |
对于 android.util.SparseBooleanArray
Int |
SparseBooleanArray.size()
返回集合中键值对的数量。 |
对于 android.util.SparseIntArray
Int |
SparseIntArray.size()
返回集合中键值对的数量。 |
对于 android.util.SparseLongArray
Int |
SparseLongArray.size()
返回集合中键值对的个数。 |
顶层函数
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 = { _, _, _, _ -> })
使用给定参数创建 LruCache。 |
infix Range<T> |
T.rangeTo(that: T)
从此 Comparable 值到 that 创建一个范围。 |
androidx.core.view
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 android.view.Menu
operator Boolean |
Menu.contains(item: MenuItem)
如果在该菜单中找到 item,则返回 |
Unit |
Menu.forEach(action: (item: MenuItem) -> Unit)
对该菜单中的每个项目执行给定操作。 |
Unit |
Menu.forEachIndexed(action: (index: Int, item: MenuItem) -> Unit)
对该菜单中的每个项目执行给定操作,提供其顺序索引。 |
operator MenuItem |
Menu.get(index: Int)
返回 index 处的菜单。 |
布尔值 |
Menu.isEmpty()
如果该菜单不包含任何项目,则返回 true。 |
布尔值 |
Menu.isNotEmpty()
如果该菜单包含一个或多个项目,则返回 true。 |
operator MutableIterator<MenuItem> |
Menu.iterator()
返回该菜单中项目的 MutableIterator。 |
operator Unit |
Menu.minusAssign(item: MenuItem)
从该菜单中删除 item。 |
对于 android.view.View
Unit |
View.doOnAttach(crossinline action: (view: View) -> Unit)
当此视图附加到窗口时,执行给定操作。 |
Unit |
View.doOnDetach(crossinline action: (view: View) -> Unit)
当此视图从窗口分离时,执行给定操作。 |
Unit |
View.doOnLayout(crossinline action: (view: View) -> Unit)
当此视图布局完毕时,执行给定操作。 |
Unit |
View.doOnNextLayout(crossinline action: (view: View) -> Unit)
当此视图下次布局时执行给定的操作。 |
OneShotPreDrawListener |
View.doOnPreDraw(crossinline action: (view: View) -> Unit)
当视图树即将绘制时执行给定的操作。 |
Bitmap |
View.drawToBitmap(config: Config = Bitmap.Config.ARGB_8888)
|
Runnable |
View.postDelayed(delayInMillis: Long, crossinline action: () -> Unit)
View.postDelayed 的版本,重新排序参数,允许将操作放在括号之外。 |
Runnable |
View.postOnAnimationDelayed(delayInMillis: Long, crossinline action: () -> Unit)
View.postOnAnimationDelayed 的版本,重新排序参数,允许将操作放在括号之外。 |
Unit |
View.setPadding(@Px size: Int)
设置视图的填充。 |
Unit |
View.updateLayoutParams(block: LayoutParams.() -> Unit)
使用视图的 layoutParams 执行 block,并使用更新后的版本重新分配 layoutParams。 |
Unit |
View.updateLayoutParams(block: T.() -> Unit)
使用视图的 layoutParams 的类型化版本执行 block,并使用更新后的版本重新分配 layoutParams。 |
Unit |
View.updatePadding(@Px left: Int = paddingLeft, @Px top: Int = paddingTop, @Px right: Int = paddingRight, @Px bottom: Int = paddingBottom)
更新此视图的填充。 |
Unit |
View.updatePaddingRelative(@Px start: Int = paddingStart, @Px top: Int = paddingTop, @Px end: Int = paddingEnd, @Px bottom: Int = paddingBottom)
更新此视图的相对填充。 |
对于 android.view.ViewGroup
operator Boolean |
ViewGroup.contains(view: View)
如果在此视图组中找到 view,则返回 |
Unit |
ViewGroup.forEach(action: (view: View) -> Unit)
对在此视图组中的每个视图执行给定的操作。 |
Unit |
ViewGroup.forEachIndexed(action: (index: Int, view: View) -> Unit)
对在此视图组中的每个视图执行给定的操作,提供其顺序索引。 |
operator View |
ViewGroup.get(index: Int)
返回 index 处的视图。 |
布尔值 |
ViewGroup.isEmpty()
如果此视图组不包含任何视图,则返回 true。 |
布尔值 |
ViewGroup.isNotEmpty()
如果此视图组包含一个或多个视图,则返回 true。 |
operator MutableIterator<View> |
ViewGroup.iterator()
返回此视图组中视图的 MutableIterator。 |
operator Unit |
ViewGroup.minusAssign(view: View)
从此视图组中移除 view。 |
operator Unit |
ViewGroup.plusAssign(view: View)
向此视图组添加 view。 |
对于 android.view.ViewGroup.MarginLayoutParams
Unit |
MarginLayoutParams.setMargins(@Px size: Int)
设置 ViewGroup 中 MarginLayoutParams 的边距。 |
Unit |
MarginLayoutParams.updateMargins(@Px left: Int = leftMargin, @Px top: Int = topMargin, @Px right: Int = rightMargin, @Px bottom: Int = bottomMargin)
更新 ViewGroup 中 MarginLayoutParams 的边距。 |
Unit |
MarginLayoutParams.updateMarginsRelative(@Px start: Int = marginStart, @Px top: Int = topMargin, @Px end: Int = marginEnd, @Px bottom: Int = bottomMargin)
更新 ViewGroup 中 MarginLayoutParams 的相对边距。 |
扩展属性
对于 android.view.Menu
Sequence<MenuItem> |
Menu.children()
返回此菜单中项的 Sequence。 |
Int |
Menu.size()
返回此菜单中项的数量。 |
对于 android.view.View
布尔值 |
View.isGone()
如果此视图的可见性为 View.GONE,则返回 true,否则返回 false。 |
布尔值 |
View.isInvisible()
如果此视图的可见性为 View.INVISIBLE,则返回 true,否则返回 false。 |
布尔值 |
View.isVisible()
如果此视图的可见性为 View.VISIBLE,则返回 true,否则返回 false。 |
Int |
View.marginBottom()
如果此视图的 LayoutParams 是 ViewGroup.MarginLayoutParams,则返回底部边距,否则返回 0。 |
Int |
View.marginEnd()
如果此视图的 LayoutParams 是 ViewGroup.MarginLayoutParams,则返回结束边距,否则返回 0。 |
Int |
View.marginLeft()
如果此视图的 LayoutParams 是 ViewGroup.MarginLayoutParams,则返回左侧边距,否则返回 0。 |
Int |
View.marginRight()
如果此视图的 LayoutParams 是 ViewGroup.MarginLayoutParams,则返回右侧边距,否则返回 0。 |
Int |
View.marginStart()
如果此视图的 LayoutParams 是 ViewGroup.MarginLayoutParams,则返回开始边距,否则返回 0。 |
Int |
View.marginTop()
如果此视图的 LayoutParams 是 ViewGroup.MarginLayoutParams,则返回顶部边距,否则返回 0。 |
对于 android.view.ViewGroup
Sequence<View> |
ViewGroup.children()
返回此视图组中子视图的 Sequence。 |
Int |
ViewGroup.size()
返回此视图组中视图的数量。 |
androidx.core.widget
依赖项
Groovy
dependencies { implementation "androidx.core:core-ktx:1.13.1" }
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.13.1") }
扩展函数
对于 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 = {})
使用提供的操作将文本更改监听器添加到此 TextView |
TextWatcher |
TextView.doAfterTextChanged(crossinline action: (text: Editable?) -> Unit)
添加一个在文本更改后将被调用的操作。 |
TextWatcher |
TextView.doBeforeTextChanged(crossinline action: (text: CharSequence?, start: Int, count: Int, after: Int) -> Unit)
添加一个在文本更改之前将被调用的操作。 |
TextWatcher |
TextView.doOnTextChanged(crossinline action: (text: CharSequence?, start: Int, count: Int, after: Int) -> Unit)
添加一个当文本发生变化时调用的操作。 |
androidx.dynamicanimation.animation
依赖项
Groovy
dependencies { implementation "androidx.dynamicanimation:dynamicanimation-ktx:1.1.0-alpha03" }
Kotlin
dependencies { implementation("androidx.dynamicanimation:dynamicanimation-ktx:1.1.0-alpha03") }
扩展函数
针对 SpringAnimation
SpringAnimation |
SpringAnimation.withSpringForceProperties(func: SpringForce.() -> Unit)
更新或应用弹簧力属性,例如 SpringForce.mDampingRatio,SpringForce.mFinalPosition 和 SpringAnimation 上的刚度。 |
顶层函数
FlingAnimation |
flingAnimationOf(setter: (Float) -> Unit, getter: () -> Float)
为可以通过提供的设置器和获取器访问的属性创建 FlingAnimation。 |
SpringAnimation |
springAnimationOf(setter: (Float) -> Unit, getter: () -> Float, finalPosition: Float = Float.NaN)
为可以通过提供的设置器和获取器访问的属性创建 SpringAnimation。 |
androidx.fragment.app
依赖项
Groovy
dependencies { implementation "androidx.fragment:fragment-ktx:1.8.3" }
Kotlin
dependencies { implementation("androidx.fragment:fragment-ktx:1.8.3") }
扩展函数
对于 android.view.View
F |
View.findFragment()
|
针对 Fragment
Lazy<VM> |
Fragment.activityViewModels(noinline factoryProducer: () -> ViewModelProvider.Factory = null)
返回一个属性委托,以访问父 Activity 的 ViewModel。如果指定了 factoryProducer,则将使用它返回的 ViewModelProvider.Factory 在第一次创建 ViewModel 时。 |
Lazy<VM> |
Fragment.createViewModelLazy(viewModelClass: KClass<VM>, storeProducer: () -> ViewModelStore, factoryProducer: () -> ViewModelProvider.Factory = null)
用于创建 ViewModelLazy 的辅助方法,该方法将传递给 factoryProducer 的 |
Lazy<VM> |
Fragment.viewModels(noinline ownerProducer: () -> ViewModelStoreOwner = { this }, noinline factoryProducer: () -> ViewModelProvider.Factory = null)
|
针对 FragmentTransaction
FragmentTransaction |
FragmentTransaction.add(@IdRes containerViewId: Int, tag: String? = null, args: Bundle? = null)
将一个 Fragment 添加到关联的 FragmentManager,将 Fragment 的视图膨胀到由 containerViewId 指定的容器视图中,以便稍后通过 FragmentManager.findFragmentById 检索。 |
FragmentTransaction |
FragmentTransaction.add(tag: String, args: Bundle? = null)
将一个 Fragment 添加到关联的 FragmentManager,而不将 Fragment 添加到任何容器视图。 |
FragmentTransaction |
FragmentTransaction.replace(@IdRes containerViewId: Int, tag: String? = null, args: Bundle? = null)
替换添加到容器中的现有 Fragment。 |
针对 FragmentManager
Unit |
FragmentManager.commit(allowStateLoss: Boolean = false, body: FragmentTransaction.() -> Unit)
在 FragmentTransaction 中运行 body,如果它在没有异常的情况下完成,它将自动提交。 |
Unit |
FragmentManager.commitNow(allowStateLoss: Boolean = false, body: FragmentTransaction.() -> Unit)
在 FragmentTransaction 中运行 body,如果它在没有异常的情况下完成,则会自动提交。 |
Unit |
FragmentManager.transaction(now: Boolean = false, allowStateLoss: Boolean = false, body: FragmentTransaction.() -> Unit)
在 FragmentTransaction 中运行 body,如果它在没有异常的情况下完成,则会自动提交。 |
androidx.fragment.app.testing
依赖项
Groovy
dependencies { implementation "androidx.fragment:fragment-testing:1.8.3" }
Kotlin
dependencies { implementation("androidx.fragment:fragment-testing:1.8.3") }
顶层函数
FragmentScenario<F!> |
launchFragment(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, factory: FragmentFactory? = null)
使用给定的 FragmentFactory 在一个空的 FragmentActivity 中启动一个带有给定参数的 Fragment,并等待它到达恢复状态。 |
FragmentScenario<F!> |
launchFragment(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, crossinline instantiate: () -> F)
使用 instantiate 在一个空的 FragmentActivity 中启动一个带有给定参数的 Fragment,并等待它到达恢复状态。 |
FragmentScenario<F!> |
launchFragmentInContainer(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, factory: FragmentFactory? = null)
在 Activity 的根视图容器 |
FragmentScenario<F!> |
launchFragmentInContainer(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, crossinline instantiate: () -> F)
在 Activity 的根视图容器 |
androidx.lifecycle
依赖项
Groovy
dependencies { implementation "androidx.lifecycle:lifecycle-livedata-core-ktx:2.8.5" implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.8.5" implementation "androidx.lifecycle:lifecycle-reactivestreams-ktx:2.8.5" implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.8.5" implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.5" }
Kotlin
dependencies { implementation("androidx.lifecycle:lifecycle-livedata-core-ktx:2.8.5") implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.8.5") implementation("androidx.lifecycle:lifecycle-reactivestreams-ktx:2.8.5") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.5") implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.5") }
扩展函数
对于 kotlinx.coroutines.flow.Flow
LiveData<T> |
Flow<T>.asLiveData(context: CoroutineContext = EmptyCoroutineContext, timeoutInMs: Long = DEFAULT_TIMEOUT)
创建一个 LiveData,它包含从原始 Flow 收集的值。 |
LiveData<T> |
Flow<T>.asLiveData(context: CoroutineContext = EmptyCoroutineContext, timeout: Duration)
创建一个 LiveData,它包含从原始 Flow 收集的值。 |
对于 org.reactivestreams.Publisher
LiveData<T> |
Publisher<T>.toLiveData()
|
对于 LiveData
Flow<T> |
LiveData<T>.asFlow()
创建一个 Flow,它包含由原始 LiveData 分派的 值:在开始时,流收集器接收 LiveData 持有的最新值,然后观察 LiveData 更新。 |
LiveData<X> |
LiveData<X>.distinctUntilChanged()
创建一个新的 LiveData 对象,直到源 |
LiveData<Y> |
LiveData<X>.map(crossinline transform: (X) -> Y)
返回一个 LiveData,它从 |
Observer<T> |
LiveData<T>.observe(owner: LifecycleOwner, crossinline onChanged: (T) -> Unit)
|
LiveData<Y> |
LiveData<X>.switchMap(crossinline transform: (X) -> LiveData<Y>)
返回一个LiveData,它通过将transform应用于设置在 |
Publisher<T> |
LiveData<T>.toPublisher(lifecycle: LifecycleOwner)
|
对于ViewModelProvider
VM |
ViewModelProvider.get()
返回与该 |
对于LifecycleOwner
suspend T |
LifecycleOwner.whenCreated(block: suspend CoroutineScope.() -> T)
当LifecycleOwner的Lifecycle至少处于Lifecycle.State.CREATED状态时,运行给定的块。 |
suspend T |
LifecycleOwner.whenResumed(block: suspend CoroutineScope.() -> T)
当LifecycleOwner的Lifecycle至少处于Lifecycle.State.RESUMED状态时,运行给定的块。 |
suspend T |
LifecycleOwner.whenStarted(block: suspend CoroutineScope.() -> T)
当LifecycleOwner的Lifecycle至少处于Lifecycle.State.STARTED状态时,运行给定的块。 |
对于Lifecycle
suspend T |
Lifecycle.whenCreated(block: suspend CoroutineScope.() -> T)
当Lifecycle至少处于Lifecycle.State.CREATED状态时,运行给定的块。 |
suspend T |
Lifecycle.whenResumed(block: suspend CoroutineScope.() -> T)
当Lifecycle至少处于Lifecycle.State.RESUMED状态时,运行给定的块。 |
suspend T |
Lifecycle.whenStarted(block: suspend CoroutineScope.() -> T)
当Lifecycle至少处于Lifecycle.State.STARTED状态时,运行给定的块。 |
suspend T |
Lifecycle.whenStateAtLeast(minState: Lifecycle.State, block: suspend CoroutineScope.() -> T)
在执行block的主线程上执行CoroutineDispatcher上运行给定的block,并暂停执行,除非Lifecycle的状态至少为minState。 |
扩展属性
对于Lifecycle
LifecycleCoroutineScope |
Lifecycle.coroutineScope()
与该Lifecycle绑定的CoroutineScope。 |
对于LifecycleOwner
LifecycleCoroutineScope |
LifecycleOwner.lifecycleScope()
|
对于ViewModel
CoroutineScope |
ViewModel.viewModelScope()
与该ViewModel绑定的CoroutineScope。 |
顶层函数
LiveData<T> |
liveData(context: CoroutineContext = EmptyCoroutineContext, timeoutInMs: Long = DEFAULT_TIMEOUT, block: suspend LiveDataScope<T>.() -> Unit)
构建一个 LiveData,其值来自给定的 block,该 block 在 LiveDataScope 上执行。 |
LiveData<T> |
liveData(context: CoroutineContext = EmptyCoroutineContext, timeout: Duration, block: suspend LiveDataScope<T>.() -> Unit)
构建一个 LiveData,其值来自给定的 block,该 block 在 LiveDataScope 上执行。 |
androidx.navigation
依赖项
Groovy
dependencies { implementation "androidx.navigation:navigation-runtime-ktx:2.8.0" implementation "androidx.navigation:navigation-fragment-ktx:2.8.0" implementation "androidx.navigation:navigation-ui-ktx:2.8.0" }
Kotlin
dependencies { implementation("androidx.navigation:navigation-runtime-ktx:2.8.0") implementation("androidx.navigation:navigation-fragment-ktx:2.8.0") implementation("androidx.navigation:navigation-ui-ktx:2.8.0") }
扩展函数
对于 android.app.Activity
NavController |
Activity.findNavController(@IdRes : Int)
查找给定 View 的 ID 和其包含的 Activity 的 NavController。 |
NavArgsLazy<Args> |
Activity.navArgs()
返回一个 Lazy 代理,以访问 Activity 的 extras 作为 Args 实例。 |
对于 android.view.View
NavController |
View.findNavController()
查找与 View 关联的 NavController。 |
对于 NavGraphBuilder
Unit |
NavGraphBuilder.activity(@IdRes : Int, : ActivityNavigatorDestinationBuilder.() -> Unit)
|
Unit |
NavGraphBuilder.navigation(@IdRes : Int, @IdRes : Int, : NavGraphBuilder.() -> Unit)
构建一个嵌套的 NavGraph |
对于 NavGraph
operator Boolean |
NavGraph.contains(@IdRes : Int)
如果在此导航图中找到具有 |
operator NavDestination |
NavGraph.get(@IdRes : Int)
返回具有 |
operator Unit |
NavGraph.minusAssign(: NavDestination)
从此导航图中删除 |
operator Unit |
NavGraph.plusAssign(: NavDestination)
向此 NavGraph 添加一个目标。 |
operator Unit |
NavGraph.plusAssign(: NavGraph)
将另一个集合中的所有目标添加到此集合中。 |
对于 NavController
NavGraph |
NavController.createGraph(@IdRes : Int = 0, @IdRes : Int, : NavGraphBuilder.() -> Unit)
构建一个新的 NavGraph |
对于 NavHost
NavGraph |
NavHost.createGraph(@IdRes : Int = 0, @IdRes : Int, : NavGraphBuilder.() -> Unit)
构建一个新的 NavGraph |
对于 NavigatorProvider
operator T |
NavigatorProvider.get(: String)
通过名称检索注册的 Navigator。 |
operator T |
NavigatorProvider.get(: KClass<T>)
使用 Navigator.Name 注释 提供的名称检索注册的 Navigator。 |
NavGraph |
NavigatorProvider.navigation(@IdRes : Int = 0, @IdRes : Int, : NavGraphBuilder.() -> Unit)
构建一个新的 NavGraph |
operator Unit |
NavigatorProvider.plusAssign(: Navigator<out NavDestination>)
使用 Navigator.Name 注解 提供的名称注册导航器。 |
operator Navigator<out NavDestination!>? |
NavigatorProvider.set(: String, : Navigator<out NavDestination>)
按名称注册一个 Navigator。 |
针对 Fragment
Lazy<VM> |
Fragment.navGraphViewModels(@IdRes : Int, noinline : () -> ViewModelProvider.Factory = null)
返回一个属性委托,用于访问作用域为 {@link NavController} 回退栈中存在的导航图的 ViewModel。 |
顶层函数
ActivityNavigator.Extras |
ActivityNavigatorExtras(: ActivityOptionsCompat? = null, : Int = 0)
使用特定的 ActivityOptionsCompat 实例和/或任何 |
NavOptions |
navOptions(: NavOptionsBuilder.() -> Unit)
构造一个新的 NavOptions |
androidx.navigation.fragment
依赖项
Groovy
dependencies { implementation "androidx.navigation:navigation-fragment-ktx:2.8.0" }
Kotlin
dependencies { implementation("androidx.navigation:navigation-fragment-ktx:2.8.0") }
扩展函数
对于 NavGraphBuilder
Unit |
NavGraphBuilder.dialog(@IdRes : Int)
|
Unit |
NavGraphBuilder.dialog(@IdRes : Int, : DialogFragmentNavigatorDestinationBuilder.() -> Unit)
|
Unit |
NavGraphBuilder.fragment(@IdRes : Int)
|
Unit |
NavGraphBuilder.fragment(@IdRes : Int, : FragmentNavigatorDestinationBuilder.() -> Unit)
|
针对 Fragment
NavController |
Fragment.findNavController()
给定一个 Fragment 找到一个 NavController。 |
NavArgsLazy<Args> |
Fragment.navArgs()
返回一个 Lazy 委托,用于访问 Fragment 的参数作为 Args 实例。 |
顶层函数
FragmentNavigator.Extras |
FragmentNavigatorExtras(vararg : Pair<View, String>)
使用给定的共享元素创建一个新的 FragmentNavigator.Extras 实例。 |
androidx.navigation.ui
依赖项
Groovy
dependencies { implementation "androidx.navigation:navigation-ui-ktx:2.8.0" }
Kotlin
dependencies { implementation("androidx.navigation:navigation-ui-ktx:2.8.0") }
扩展函数
对于 android.view.MenuItem
布尔值 |
MenuItem.onNavDestinationSelected(: NavController)
尝试导航到与此 MenuItem 关联的 NavDestination。 |
对于 androidx.appcompat.app.AppCompatActivity
Unit |
AppCompatActivity.setupActionBarWithNavController(: NavController, : DrawerLayout?)
使用 NavController 设置 AppCompatActivity.getSupportActionBar 返回的 ActionBar。 |
Unit |
AppCompatActivity.setupActionBarWithNavController(: NavController, : AppBarConfiguration = AppBarConfiguration(navController.graph))
使用 NavController 设置 AppCompatActivity.getSupportActionBar 返回的 ActionBar。 |
对于 androidx.appcompat.widget.Toolbar
Unit |
Toolbar.setupWithNavController(: NavController, : DrawerLayout?)
使用 NavController 设置一个 Toolbar。 |
Unit |
Toolbar.setupWithNavController(: NavController, : AppBarConfiguration = AppBarConfiguration(navController.graph))
使用 NavController 设置一个 Toolbar。 |
对于 com.google.android.material.appbar.CollapsingToolbarLayout
Unit |
CollapsingToolbarLayout.setupWithNavController(: Toolbar, : NavController, : DrawerLayout?)
将 CollapsingToolbarLayout 和 Toolbar 设置为与 NavController 一起使用。 |
Unit |
CollapsingToolbarLayout.setupWithNavController(: Toolbar, : NavController, : AppBarConfiguration = AppBarConfiguration(navController.graph))
将 CollapsingToolbarLayout 和 Toolbar 设置为与 NavController 一起使用。 |
对于 com.google.android.material.bottomnavigation.BottomNavigationView
Unit |
BottomNavigationView.setupWithNavController(: NavController)
将 BottomNavigationView 设置为与 NavController 一起使用。 |
对于 com.google.android.material.navigation.NavigationView
Unit |
NavigationView.setupWithNavController(: NavController)
将 NavigationView 设置为与 NavController 一起使用。 |
对于 NavController
布尔值 |
NavController.navigateUp(: DrawerLayout?)
通过将行为委托给给定的 NavController 来处理向上按钮。 |
布尔值 |
NavController.navigateUp(: AppBarConfiguration)
通过将行为委托给给定的 NavController 来处理向上按钮。 |
顶层函数
AppBarConfiguration |
AppBarConfiguration(: NavGraph, : DrawerLayout? = null, noinline : () -> Boolean = { false })
用于 NavigationUI 方法的配置选项,这些方法与应用程序栏模式的实现(如 android.support.v7.widget.Toolbar、android.support.design.widget.CollapsingToolbarLayout 和 android.support.v7.app.ActionBar)交互。 |
AppBarConfiguration |
AppBarConfiguration(: Menu, : DrawerLayout? = null, noinline : () -> Boolean = { false })
用于 NavigationUI 方法的配置选项,这些方法与应用程序栏模式的实现(如 android.support.v7.widget.Toolbar、android.support.design.widget.CollapsingToolbarLayout 和 android.support.v7.app.ActionBar)交互。 |
AppBarConfiguration |
AppBarConfiguration(: Set<Int>, : DrawerLayout? = null, noinline : () -> Boolean = { false })
用于 NavigationUI 方法的配置选项,这些方法与应用程序栏模式的实现(如 android.support.v7.widget.Toolbar、android.support.design.widget.CollapsingToolbarLayout 和 android.support.v7.app.ActionBar)交互。 |
androidx.paging
依赖项
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") }
扩展函数
对于 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)
从此 |
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)
从此 |
LiveData<PagedList<Value>> |
DataSource.Factory<Key, Value>.toLiveData(config: PagedList.Config, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchExecutor: Executor = ArchTaskExecutor.getIOThreadExecutor())
从该 |
LiveData<PagedList<Value>> |
DataSource.Factory<Key, Value>.toLiveData(pageSize: Int, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchExecutor: Executor = ArchTaskExecutor.getIOThreadExecutor())
从该 |
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)
从该 |
Observable<PagedList<Value>> |
DataSource.Factory<Key, Value>.toObservable(pageSize: Int, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchScheduler: Scheduler? = null, notifyScheduler: Scheduler? = null)
从该 |
顶层函数
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)
构建一个 PagedList.Config,是 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)
构建一个 PagedList,是 PagedList.Builder 的简便方法。 |
androidx.palette.graphics
依赖项
Groovy
dependencies { implementation "androidx.palette:palette-ktx:1.0.0" }
Kotlin
dependencies { implementation("androidx.palette:palette-ktx:1.0.0") }
扩展函数
对于 Palette
operator Palette.Swatch? |
Palette.get(target: Target)
返回调色板中给定目标的选定色块,如果找不到则返回 |
androidx.preference
依赖项
Groovy
dependencies { implementation "androidx.preference:preference-ktx:1.2.1" }
Kotlin
dependencies { implementation("androidx.preference:preference-ktx:1.2.1") }
扩展函数
对于 PreferenceGroup
operator Boolean |
PreferenceGroup.contains(preference: Preference)
如果在这个偏好组中找到了 |
Unit |
PreferenceGroup.forEach(action: (preference: Preference) -> Unit)
对这个偏好组中的每个偏好执行给定的操作。 |
Unit |
PreferenceGroup.forEachIndexed(action: (index: Int, preference: Preference) -> Unit)
对这个偏好组中的每个偏好执行给定的操作,提供其顺序索引。 |
operator T? |
PreferenceGroup.get(key: CharSequence)
返回具有 |
operator Preference |
PreferenceGroup.get(index: Int)
返回 |
布尔值 |
PreferenceGroup.isEmpty()
如果这个偏好组不包含任何偏好,则返回 true。 |
布尔值 |
PreferenceGroup.isNotEmpty()
如果这个偏好组包含一个或多个偏好,则返回 true。 |
operator MutableIterator<Preference> |
PreferenceGroup.iterator()
返回这个偏好组中偏好的 MutableIterator。 |
operator Unit |
PreferenceGroup.minusAssign(preference: Preference)
从这个偏好组中移除 |
operator Unit |
PreferenceGroup.plusAssign(preference: Preference)
将 |
扩展属性
对于 PreferenceGroup
Sequence<Preference> |
PreferenceGroup.children()
返回这个偏好组中偏好的 Sequence。 |
Int |
PreferenceGroup.size()
返回这个偏好组中偏好的数量。 |
androidx.room
依赖项
Groovy
dependencies { implementation "androidx.room:room-ktx:2.6.1" }
Kotlin
dependencies { implementation("androidx.room:room-ktx:2.6.1") }
扩展函数
对于 RoomDatabase
suspend R |
RoomDatabase.withTransaction(block: suspend () -> R)
在数据库事务中调用指定的挂起 block。 |
androidx.slice.builders
依赖项
Groovy
dependencies { implementation "androidx.slice:slice-builders-ktx:1.0.0-alpha08" }
Kotlin
dependencies { implementation("androidx.slice:slice-builders-ktx:1.0.0-alpha08") }
扩展函数
对于 GridRowBuilderDsl
GridRowBuilder |
GridRowBuilderDsl.cell(buildCell: CellBuilderDsl.() -> Unit)
|
GridRowBuilder |
GridRowBuilderDsl.seeMoreCell(buildCell: CellBuilderDsl.() -> Unit)
|
对于 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)
|
顶层函数
Slice |
list(context: Context, uri: Uri, ttl: Long, addRows: ListBuilderDsl.() -> Unit)
简化了在 Kotlin 中构建 Slice 所需的冗余代码。 |
SliceAction |
tapSliceAction(pendingIntent: PendingIntent, icon: IconCompat, imageMode: Int = ICON_IMAGE, title: CharSequence)
用于构建可点击的 SliceAction 的工厂方法。 |
SliceAction |
toggleSliceAction(pendingIntent: PendingIntent, icon: IconCompat? = null, title: CharSequence, isChecked: Boolean)
用于构建可切换的 SliceAction 的工厂方法。 |
androidx.sqlite.db
依赖项
Groovy
dependencies { implementation "androidx.sqlite:sqlite-ktx:2.4.0" }
Kotlin
dependencies { implementation("androidx.sqlite:sqlite-ktx:2.4.0") }
扩展函数
适用于 SupportSQLiteDatabase
T |
SupportSQLiteDatabase.transaction(exclusive: Boolean = true, body: SupportSQLiteDatabase.() -> T)
在事务中运行 body,如果它在没有异常的情况下完成,则将其标记为成功。 |
androidx.work
依赖项
扩展函数
适用于 com.google.common.util.concurrent.ListenableFuture
suspend R |
ListenableFuture<R>.await()
等待 ListenableFuture 完成,不阻塞线程。 |
适用于 Operation
suspend Operation.State.SUCCESS! |
Operation.await()
等待 Operation 完成,不阻塞线程。 |
适用于 Data
布尔值 |
Data.hasKeyWithValueOfType(key: String)
|
适用于 Builder
OneTimeWorkRequest.Builder |
OneTimeWorkRequest.Builder.setInputMerger(@NonNull inputMerger: KClass<out InputMerger>)
|
顶层函数
OneTimeWorkRequest.Builder |
OneTimeWorkRequestBuilder()
使用给定的 ListenableWorker 创建一个 OneTimeWorkRequest。 |
PeriodicWorkRequest.Builder |
PeriodicWorkRequestBuilder(repeatInterval: Long, repeatIntervalTimeUnit: TimeUnit)
使用给定的 ListenableWorker 创建一个 PeriodicWorkRequest.Builder。 |
PeriodicWorkRequest.Builder |
PeriodicWorkRequestBuilder(repeatInterval: Duration)
使用给定的 ListenableWorker 创建一个 PeriodicWorkRequest.Builder。 |
PeriodicWorkRequest.Builder |
PeriodicWorkRequestBuilder(repeatInterval: Long, repeatIntervalTimeUnit: TimeUnit, flexTimeInterval: Long, flexTimeIntervalUnit: TimeUnit)
使用给定的 ListenableWorker 创建一个 PeriodicWorkRequest.Builder。 |
PeriodicWorkRequest.Builder |
PeriodicWorkRequestBuilder(repeatInterval: Duration, flexTimeInterval: Duration)
使用给定的 ListenableWorker 创建一个 PeriodicWorkRequest.Builder。 |
数据 |
workDataOf(vararg pairs: Pair<String, Any?>)
将一对列表转换为 Data 对象。 |
androidx.work.testing
依赖项
Groovy
dependencies { implementation "androidx.work:work-testing:2.9.1" }
Kotlin
dependencies { implementation("androidx.work:work-testing:2.9.1") }
顶层函数
TestListenableWorkerBuilder<W> |
TestListenableWorkerBuilder(context: Context, inputData: Data = Data.EMPTY, tags: List<String> = emptyList(), runAttemptCount: Int = 1, triggeredContentUris: List<Uri> = emptyList(), triggeredContentAuthorities: List<String> = emptyList())
构建 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())
构建 TestWorkerBuilder 的实例。 |
com.google.android.play.core.ktx
依赖项
Groovy
dependencies { implementation "com.google.android.play:core-ktx:1.8.1" }
Kotlin
dependencies { implementation("com.google.android.play:core-ktx:1.8.1") }
扩展函数
对于 com.google.android.play.core.appupdate.AppUpdateManager
suspend AppUpdateInfo |
AppUpdateManager.requestAppUpdateInfo()
请求当前应用程序的更新可用性 |
suspend Unit |
AppUpdateManager.requestCompleteUpdate()
对于灵活的更新流程,触发更新的完成。 |
Flow<AppUpdateResult> |
AppUpdateManager.requestUpdateFlow()
监控更新的可用性和进度的入口点。 |
布尔值 |
AppUpdateManager.startUpdateFlowForResult(appUpdateInfo: AppUpdateInfo, appUpdateType: Int, fragment: Fragment, requestCode: Int)
一个接受 AndroidX Fragment 的 AppUpdateManager.startUpdateFlowForResult 版本,用于返回结果。 |
对于 com.google.android.play.core.splitinstall.SplitInstallManager
扩展属性
对于 com.google.android.play.core.appupdate.AppUpdateInfo
Int |
AppUpdateInfo.installStatus()
返回更新的进度状态。 |
布尔值 |
AppUpdateInfo.isFlexibleUpdateAllowed()
如果允许灵活更新,则返回 |
布尔值 |
AppUpdateInfo.isImmediateUpdateAllowed()
如果允许立即更新,则返回 |
对于 com.google.android.play.core.install.InstallState
布尔值 |
InstallState.hasTerminalStatus()
这表示这是一个终端状态(不会有更多更新),应该相应地处理(成功、取消或失败)。 |
Int |
InstallState.installErrorCode()
返回安装的错误代码,或 {@link InstallErrorCode#NO_ERROR}。 |
Int |
InstallState.installStatus()
返回安装的状态。 |
String! |
InstallState.packageName()
返回正在安装的应用程序的包名。 |
对于 com.google.android.play.core.splitinstall.SplitInstallSessionState
长整数 |
SplitInstallSessionState.bytesDownloaded()
此更新下载的字节数。 |
Int |
SplitInstallSessionState.errorCode()
此更新的错误代码。 |
布尔值 |
SplitInstallSessionState.hasTerminalStatus()
表示此更新是终端的,这意味着此会话不会有更多更新。 |
List<String> |
SplitInstallSessionState.languages()
此更新包含的语言。 |
List<String> |
SplitInstallSessionState.moduleNames()
此更新包含的模块。 |
Int |
SplitInstallSessionState.sessionId()
此更新的会话 ID。 |
Int |
SplitInstallSessionState.status()
此更新的状态代码。 |
长整数 |
SplitInstallSessionState.totalBytesToDownload()
此更新要下载的总字节数。 |
顶层函数
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 = {})
用于创建 SplitInstallStateUpdatedListener 的便捷函数。 |