Daftar ekstensi KTX

androidx.activity

Dependensi

Groovy

dependencies {
    implementation "androidx.activity:activity-ktx:1.9.0"
}

Kotlin

dependencies {
    implementation("androidx.activity:activity-ktx:1.9.0")
}

Fungsi ekstensi

Untuk OnBackPressedDispatcher
OnBackPressedCallback OnBackPressedDispatcher.addCallback(owner: LifecycleOwner? = null, enabled: Boolean = true, onBackPressed: OnBackPressedCallback.() -> Unit)

Membuat dan menambahkan OnBackPressedCallback baru yang memanggil onBackPressed dalam OnBackPressedCallback.handleOnBackPressed.

Untuk ComponentActivity
Lazy<VM> ComponentActivity.viewModels(noinline factoryProducer: () -> ViewModelProvider.Factory = null)

Menampilkan delegasi Lazy untuk mengakses ViewModel ComponentActivity, jika factoryProducer ditentukan, lalu ViewModelProvider.Factory yang ditampilkannya akan digunakan untuk membuat ViewModel terlebih dahulu.

androidx.benchmark

Dependensi

Groovy

dependencies {
    implementation "androidx.benchmark:benchmark-junit4:1.2.1"
}

Kotlin

dependencies {
    implementation("androidx.benchmark:benchmark-junit4:1.2.1")
}

Fungsi level atas

Unit beginTraceSection(sectionName: String)

Unit endTraceSection()

androidx.benchmark.junit4

Dependensi

Groovy

dependencies {
    implementation "androidx.benchmark:benchmark-junit4:1.2.1"
}

Kotlin

dependencies {
    implementation("androidx.benchmark:benchmark-junit4:1.2.1")
}

Fungsi ekstensi

Untuk BenchmarkRule
Unit BenchmarkRule.measureRepeated(crossinline block: BenchmarkRule.Scope.() -> Unit)

Menetapkan tolok ukur pada blok kode.

androidx.collection

Dependensi

Groovy

dependencies {
    implementation "androidx.collection:collection-ktx:1.3.0"
}

Kotlin

dependencies {
    implementation("androidx.collection:collection-ktx:1.3.0")
}

Fungsi ekstensi

Untuk LongSparseArray
operator Boolean LongSparseArray<T>.contains(key: Long)

Menampilkan true jika koleksi berisi kunci.

Unit LongSparseArray<T>.forEach(action: (key: Long, value: T) -> Unit)

Melakukan tindakan yang ditentukan untuk setiap entri kunci/nilai.

T LongSparseArray<T>.getOrDefault(key: Long, defaultValue: T)

Menampilkan nilai yang sesuai dengan kunci, atau defaultValue jika tidak ada.

T LongSparseArray<T>.getOrElse(key: Long, defaultValue: () -> T)

Menampilkan nilai yang sesuai dengan kunci, atau dari defaultValue jika tidak ada.

Boolean LongSparseArray<T>.isNotEmpty()

Menampilkan true jika koleksi berisi elemen.

LongIterator LongSparseArray<T>.keyIterator()

Menampilkan iterator ke kunci koleksi.

operator LongSparseArray<T> LongSparseArray<T>.plus(other: LongSparseArray<T>)

Membuat koleksi baru dengan menambahkan atau mengganti entri dari lainnya.

Boolean LongSparseArray<T>.remove(key: Long, value: T)

Menghapus entri untuk kunci hanya jika dipetakan ke nilai.

operator Unit LongSparseArray<T>.set(key: Long, value: T)

Mengizinkan penggunaan operator indeks untuk menyimpan nilai dalam koleksi.

Iterator<T> LongSparseArray<T>.valueIterator()

Menampilkan iterator ke nilai koleksi.

Untuk SparseArrayCompat
operator Boolean SparseArrayCompat<T>.contains(key: Int)

Menampilkan true jika koleksi berisi kunci.

Unit SparseArrayCompat<T>.forEach(action: (key: Int, value: T) -> Unit)

Melakukan tindakan yang ditentukan untuk setiap entri kunci/nilai.

T SparseArrayCompat<T>.getOrDefault(key: Int, defaultValue: T)

Menampilkan nilai yang sesuai dengan kunci, atau defaultValue jika tidak ada.

T SparseArrayCompat<T>.getOrElse(key: Int, defaultValue: () -> T)

Menampilkan nilai yang sesuai dengan kunci, atau dari defaultValue jika tidak ada.

Boolean SparseArrayCompat<T>.isNotEmpty()

Menampilkan true jika koleksi berisi elemen.

IntIterator SparseArrayCompat<T>.keyIterator()

Menampilkan iterator ke kunci koleksi.

operator SparseArrayCompat<T> SparseArrayCompat<T>.plus(other: SparseArrayCompat<T>)

Membuat koleksi baru dengan menambahkan atau mengganti entri dari lainnya.

Boolean SparseArrayCompat<T>.remove(key: Int, value: T)

Menghapus entri untuk kunci hanya jika dipetakan ke nilai.

operator Unit SparseArrayCompat<T>.set(key: Int, value: T)

Mengizinkan penggunaan operator indeks untuk menyimpan nilai dalam koleksi.

Iterator<T> SparseArrayCompat<T>.valueIterator()

Menampilkan iterator ke nilai koleksi.

Properti ekstensi

Untuk LongSparseArray
Int LongSparseArray<T>.size()

Menampilkan jumlah key-value pair dalam koleksi.

Untuk SparseArrayCompat
Int SparseArrayCompat<T>.size()

Menampilkan jumlah key-value pair dalam koleksi.

Fungsi level atas

ArrayMap<K, V> arrayMapOf()

Menampilkan ArrayMap baru yang kosong.

ArrayMap<K, V> arrayMapOf(vararg pairs: Pair<K, V>)

Menampilkan ArrayMap baru dengan konten yang ditentukan, diberikan sebagai daftar pasangan dengan komponen pertama sebagai kuncinya dan komponen kedua sebagai nilainya.

ArraySet<T> arraySetOf()

Menampilkan ArraySet baru yang kosong.

ArraySet<T> arraySetOf(vararg values: T)

Menampilkan ArraySet baru dengan konten yang ditentukan.

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 = { _, _, _, _ -> })

Membuat LruCache dengan parameter yang ditentukan.

androidx.core.animation

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk 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 = {})

Menambahkan pemroses ke Animator ini menggunakan tindakan yang diberikan.

AnimatorPauseListener Animator.addPauseListener(crossinline onResume: (animator: Animator) -> Unit = {}, crossinline onPause: (animator: Animator) -> Unit = {})

Menambahkan jeda dan melanjutkan pemroses ke Animator ini menggunakan tindakan yang diberikan.

AnimatorListener Animator.doOnCancel(crossinline action: (animator: Animator) -> Unit)

Menambahkan tindakan yang akan dipanggil saat animasi dibatalkan.

AnimatorListener Animator.doOnEnd(crossinline action: (animator: Animator) -> Unit)

Menambahkan tindakan yang akan dipanggil saat animasi berakhir.

AnimatorPauseListener Animator.doOnPause(crossinline action: (animator: Animator) -> Unit)

Menambahkan tindakan yang akan dipanggil saat animasi dijeda.

AnimatorListener Animator.doOnRepeat(crossinline action: (animator: Animator) -> Unit)

Menambahkan tindakan yang akan dipanggil saat animasi diulang.

AnimatorPauseListener Animator.doOnResume(crossinline action: (animator: Animator) -> Unit)

Menambahkan tindakan yang akan dipanggil saat animasi dilanjutkan setelah dijeda.

AnimatorListener Animator.doOnStart(crossinline action: (animator: Animator) -> Unit)

Menambahkan tindakan yang akan dipanggil saat animasi dimulai.

androidx.core.content

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.content.Context
T? Context.getSystemService()

Menampilkan nama ke layanan level sistem berdasarkan class.

Unit Context.withStyledAttributes(set: AttributeSet? = null, attrs: IntArray, @AttrRes defStyleAttr: Int = 0, @StyleRes defStyleRes: Int = 0, block: TypedArray.() -> Unit)

Mengeksekusi blok pada penerima TypedArray.

Unit Context.withStyledAttributes(@StyleRes resourceId: Int, attrs: IntArray, block: TypedArray.() -> Unit)

Mengeksekusi blok pada penerima TypedArray.

Untuk android.content.SharedPreferences
Unit SharedPreferences.edit(commit: Boolean = false, action: Editor.() -> Unit)

Memungkinkan pengeditan instance preferensi ini dengan panggilan untuk menerapkan atau meng-commit guna mempertahankan perubahan.

Fungsi level atas

ContentValues contentValuesOf(vararg pairs: Pair<String, Any?>)

Menampilkan nilai ContentValues baru dengan key-value pair yang ditentukan sebagai elemen.

androidx.core.content.res

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.content.res.TypedArray
Boolean TypedArray.getBooleanOrThrow(@StyleableRes index: Int)

Mengambil nilai boolean untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Int TypedArray.getColorOrThrow(@StyleableRes index: Int)

Mengambil nilai warna untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

ColorStateList TypedArray.getColorStateListOrThrow(@StyleableRes index: Int)

Mengambil nilai daftar status warna untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Float TypedArray.getDimensionOrThrow(@StyleableRes index: Int)

Mengambil nilai dimensi untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Int TypedArray.getDimensionPixelOffsetOrThrow(@StyleableRes index: Int)

Mengambil nilai offset piksel dimensi untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Int TypedArray.getDimensionPixelSizeOrThrow(@StyleableRes index: Int)

Mengambil nilai ukuran piksel dimensi untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Drawable TypedArray.getDrawableOrThrow(@StyleableRes index: Int)

Mengambil nilai drawable untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Float TypedArray.getFloatOrThrow(@StyleableRes index: Int)

Mengambil nilai float untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Typeface TypedArray.getFontOrThrow(@StyleableRes index: Int)

Mengambil nilai font untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Int TypedArray.getIntOrThrow(@StyleableRes index: Int)

Mengambil nilai bilangan bulat untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Int TypedArray.getIntegerOrThrow(@StyleableRes index: Int)

Mengambil nilai bilangan bulat untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Int TypedArray.getResourceIdOrThrow(@StyleableRes index: Int)

Mengambil ID resource untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

String TypedArray.getStringOrThrow(@StyleableRes index: Int)

Mengambil nilai string untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

Array<CharSequence> TypedArray.getTextArrayOrThrow(@StyleableRes index: Int)

Mengambil nilai array teks untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

CharSequence TypedArray.getTextOrThrow(@StyleableRes index: Int)

Mengambil nilai teks untuk atribut pada indeks atau menampilkan IllegalArgumentException jika tidak ditentukan.

R TypedArray.use(block: (TypedArray) -> R)

Mengeksekusi fungsi blok yang ditentukan pada TypedArray ini dan mendaurulangnya.

androidx.core.database

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.database.Cursor
ByteArray? Cursor.getBlobOrNull(index: Int)

Menampilkan nilai kolom yang diminta sebagai array byte nullable.

Double? Cursor.getDoubleOrNull(index: Int)

Menampilkan nilai kolom yang diminta sebagai nullable ganda.

Float? Cursor.getFloatOrNull(index: Int)

Menampilkan nilai kolom yang diminta sebagai float nullable.

Int? Cursor.getIntOrNull(index: Int)

Menampilkan nilai kolom yang diminta sebagai bilangan bulat nullable.

Long? Cursor.getLongOrNull(index: Int)

Menampilkan nilai kolom yang diminta sebagai long nullable.

Short? Cursor.getShortOrNull(index: Int)

Menampilkan nilai kolom yang diminta sebagai short nullable.

String? Cursor.getStringOrNull(index: Int)

Menampilkan nilai kolom yang diminta sebagai string nullable.

androidx.core.database.sqlite

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.database.sqlite.SQLiteDatabase
T SQLiteDatabase.transaction(exclusive: Boolean = true, body: SQLiteDatabase.() -> T)

Menjalankan isi dalam transaksi yang menandainya sebagai berhasil jika selesai tanpa pengecualian.

androidx.core.graphics

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.graphics.Bitmap
Bitmap Bitmap.applyCanvas(block: Canvas.() -> Unit)

Membuat Canvas baru untuk menggambar pada bitmap ini dan mengeksekusi blok yang ditentukan pada kanvas yang baru dibuat.

operator Boolean Bitmap.contains(p: Point)

Menampilkan true jika titik yang ditentukan berada dalam bitmap.

operator Boolean Bitmap.contains(p: PointF)

Menampilkan true jika titik yang ditentukan berada dalam bitmap.

operator Int Bitmap.get(x: Int, y: Int)

Menampilkan nilai piksel pada lokasi yang ditentukan.

Bitmap Bitmap.scale(width: Int, height: Int, filter: Boolean = true)

Membuat bitmap baru yang diskalakan dari bitmap ini jika memungkinkan.

operator Unit Bitmap.set(x: Int, y: Int, color: Int)

Menulis int warna yang ditentukan dalam bitmap (dengan asumsi nilainya dapat diubah) pada koordinat (x, y) yang ditentukan.

Untuk android.graphics.Canvas
Unit Canvas.withClip(clipRect: Rect, block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.clipRect dan Canvas.restoreToCount.

Unit Canvas.withClip(clipRect: RectF, block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.clipRect dan Canvas.restoreToCount.

Unit Canvas.withClip(left: Int, top: Int, right: Int, bottom: Int, block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.clipRect dan Canvas.restoreToCount.

Unit Canvas.withClip(left: Float, top: Float, right: Float, bottom: Float, block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.clipRect dan Canvas.restoreToCount.

Unit Canvas.withClip(clipPath: Path, block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.clipPath dan Canvas.restoreToCount.

Unit Canvas.withMatrix(matrix: Matrix = Matrix(), block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.concat dan Canvas.restoreToCount.

Unit Canvas.withRotation(degrees: Float = 0.0f, pivotX: Float = 0.0f, pivotY: Float = 0.0f, block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.rotate dan Canvas.restoreToCount.

Unit Canvas.withSave(block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save dan Canvas.restoreToCount.

Unit Canvas.withScale(x: Float = 1.0f, y: Float = 1.0f, pivotX: Float = 0.0f, pivotY: Float = 0.0f, block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.scale dan Canvas.restoreToCount.

Unit Canvas.withSkew(x: Float = 0.0f, y: Float = 0.0f, block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.skew dan Canvas.restoreToCount.

Unit Canvas.withTranslation(x: Float = 0.0f, y: Float = 0.0f, block: Canvas.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Canvas.save/Canvas.translate dan Canvas.restoreToCount.

Untuk android.graphics.Color
operator Float Color.component1()

Menampilkan komponen pertama untuk warna.

operator Float Color.component2()

Menampilkan komponen kedua untuk warna.

operator Float Color.component3()

Menampilkan komponen ketiga untuk warna.

operator Float Color.component4()

Menampilkan komponen keempat untuk warna.

infix Color! Color.convertTo(colorSpace: Named)

Mengonversi penerima warna menjadi warna di ruang warna yang ditentukan.

infix Color! Color.convertTo(colorSpace: ColorSpace)

Mengonversi penerima warna menjadi warna di ruang warna yang ditentukan.

operator Color Color.plus(c: Color)

Menggabungkan dua warna transparan bersama-sama.

Untuk android.graphics.ImageDecoder.Source
Bitmap Source.decodeBitmap(crossinline action: ImageDecoder.(info: ImageInfo, source: Source) -> Unit)

Membuat Bitmap dari Source

Drawable Source.decodeDrawable(crossinline action: ImageDecoder.(info: ImageInfo, source: Source) -> Unit)

Membuat Drawable dari Source

Untuk android.graphics.Matrix
operator Matrix Matrix.times(m: Matrix)

Mengalikan Matrix ini dengan matriks lain dan menampilkan hasilnya sebagai matriks baru.

FloatArray Matrix.values()

Menampilkan 9 nilai dari Matrix ini sebagai array baru float.

Untuk android.graphics.Paint
Boolean Paint.setBlendMode(blendModeCompat: BlendModeCompat?)

Metode yang mempermudah konfigurasi BlendMode Paint dengan cara yang memungkinkan kompatibilitas mundur.

Untuk android.graphics.Path
infix Path Path.and(p: Path)

Menampilkan titik potong dua jalur sebagai Path baru.

Iterable<PathSegment> Path.flatten(error: Float = 0.5f)

Meratakan (atau memperkirakan) Path dengan rangkaian segmen garis.

operator Path Path.minus(p: Path)

Menampilkan perbedaan dua jalur sebagai Path baru.

infix Path Path.or(p: Path)

Menampilkan gabungan dua jalur sebagai Path baru.

operator Path Path.plus(p: Path)

Menampilkan gabungan dua jalur sebagai Path baru.

infix Path Path.xor(p: Path)

Menampilkan gabungan dua jalur minus titik potongnya sebagai Path baru.

Untuk android.graphics.Picture
Picture Picture.record(width: Int, height: Int, block: Canvas.() -> Unit)

Membuat Canvas baru untuk merekam perintah dalam Picture ini, mengeksekusi blok yang ditentukan pada kanvas yang baru dibuat dan menampilkan Picture ini.

Untuk android.graphics.Point
operator Int Point.component1()

Menampilkan koordinat x dari titik ini.

operator Int Point.component2()

Menampilkan koordinat y dari titik ini.

operator Point Point.minus(p: Point)

Menyeimbangkan titik ini menurut negasi titik yang ditentukan dan menampilkan hasilnya sebagai titik baru.

operator Point Point.minus(xy: Int)

Menyeimbangkan titik ini menurut negasi jumlah yang ditentukan pada sumbu X dan Y dan menampilkan hasilnya sebagai titik baru.

operator Point Point.plus(p: Point)

Menyeimbangkan titik ini menurut titik yang ditentukan dan menampilkan hasilnya sebagai titik baru.

operator Point Point.plus(xy: Int)

Menyeimbangkan titik ini menurut jumlah yang ditentukan pada sumbu X dan Y dan menampilkan hasilnya sebagai titik baru.

PointF Point.toPointF()

Menampilkan representasi PointF titik ini.

operator Point Point.unaryMinus()

Menampilkan titik baru yang merepresentasikan negasi titik ini.

Untuk android.graphics.PointF
operator Float PointF.component1()

Menampilkan koordinat x dari titik ini.

operator Float PointF.component2()

Menampilkan koordinat y dari titik ini.

operator PointF PointF.minus(p: PointF)

Menyeimbangkan titik ini menurut negasi titik yang ditentukan dan menampilkan hasilnya sebagai titik baru.

operator PointF PointF.minus(xy: Float)

Menyeimbangkan titik ini menurut negasi jumlah yang ditentukan pada sumbu X dan Y dan menampilkan hasilnya sebagai titik baru.

operator PointF PointF.plus(p: PointF)

Menyeimbangkan titik ini menurut titik yang ditentukan dan menampilkan hasilnya sebagai titik baru.

operator PointF PointF.plus(xy: Float)

Menyeimbangkan titik ini menurut jumlah yang ditentukan pada sumbu X dan Y dan menampilkan hasilnya sebagai titik baru.

Point PointF.toPoint()

Menampilkan representasi Point dari titik ini.

operator PointF PointF.unaryMinus()

Menampilkan titik baru yang merepresentasikan negasi titik ini.

Untuk android.graphics.PorterDuff.Mode
PorterDuffColorFilter Mode.toColorFilter(color: Int)

Membuat PorterDuffColorFilter baru yang menggunakan PorterDuff.Mode ini sebagai mode perpaduan atau pengomposisian alfa, dan warna yang ditentukan.

PorterDuffXfermode Mode.toXfermode()

Membuat PorterDuffXfermode baru yang menggunakan PorterDuff.Mode ini sebagai mode perpaduan atau pengomposisian alfa.

Untuk android.graphics.Rect
infix Rect Rect.and(r: Rect)

Menampilkan titik potong dua persegi panjang sebagai persegi panjang baru.

operator Int Rect.component1()

Menampilkan "left", komponen pertama untuk persegi panjang.

operator Int Rect.component2()

Menampilkan "top", komponen kedua untuk persegi panjang.

operator Int Rect.component3()

Menampilkan "right", komponen ketiga untuk persegi panjang.

operator Int Rect.component4()

Menampilkan "bottom", komponen keempat untuk persegi panjang.

operator Boolean Rect.contains(p: Point)

Menampilkan true jika titik yang ditentukan berada dalam persegi panjang.

operator Region Rect.minus(r: Rect)

Menampilkan selisih persegi panjang ini dan persegi panjang yang ditentukan sebagai region baru.

operator Rect Rect.minus(xy: Int)

Menampilkan persegi panjang baru yang merepresentasikan offset persegi panjang ini dengan negasi jumlah yang ditentukan pada sumbu X dan Y.

operator Rect Rect.minus(xy: Point)

Menampilkan persegi panjang baru yang merepresentasikan offset persegi panjang ini dengan negasi titik yang ditentukan.

infix Rect Rect.or(r: Rect)

Menampilkan gabungan dua persegi panjang sebagai persegi panjang baru.

operator Rect Rect.plus(r: Rect)

Melakukan penggabungan persegi panjang ini dan persegi panjang yang ditentukan lalu menampilkan hasilnya sebagai persegi panjang baru.

operator Rect Rect.plus(xy: Int)

Menampilkan persegi panjang baru yang merepresentasikan offset persegi panjang ini menurut jumlah yang ditetapkan pada sumbu X dan Y.

operator Rect Rect.plus(xy: Point)

Menampilkan persegi panjang baru yang merepresentasikan offset persegi panjang ini menurut titik yang ditetapkan.

operator Rect Rect.times(factor: Int)

Menampilkan persegi panjang baru yang merepresentasikan komponen persegi panjang ini, yang masing-masing disesuaikan skalanya oleh faktor.

RectF Rect.toRectF()

Menampilkan representasi RectF persegi panjang ini.

Region Rect.toRegion()

Menampilkan representasi Region persegi panjang ini.

infix Region Rect.xor(r: Rect)

Menampilkan gabungan dua persegi panjang minus titik potongnya sebagai region baru.

Untuk android.graphics.RectF
infix RectF RectF.and(r: RectF)

Menampilkan titik potong dua persegi panjang sebagai persegi panjang baru.

operator Float RectF.component1()

Menampilkan "left", komponen pertama untuk persegi panjang.

operator Float RectF.component2()

Menampilkan "top", komponen kedua untuk persegi panjang.

operator Float RectF.component3()

Menampilkan "right", komponen ketiga untuk persegi panjang.

operator Float RectF.component4()

Menampilkan "bottom", komponen keempat untuk persegi panjang.

operator Boolean RectF.contains(p: PointF)

Menampilkan true jika titik yang ditentukan berada dalam persegi panjang.

operator Region RectF.minus(r: RectF)

Menampilkan selisih persegi panjang ini dan persegi panjang yang ditentukan sebagai region baru.

operator RectF RectF.minus(xy: Float)

Menampilkan persegi panjang baru yang merepresentasikan offset persegi panjang ini dengan negasi jumlah yang ditentukan pada sumbu X dan Y.

operator RectF RectF.minus(xy: PointF)

Menampilkan persegi panjang baru yang merepresentasikan offset persegi panjang ini dengan negasi titik yang ditentukan.

infix RectF RectF.or(r: RectF)

Menampilkan gabungan dua persegi panjang sebagai persegi panjang baru.

operator RectF RectF.plus(r: RectF)

Melakukan penggabungan persegi panjang ini dan persegi panjang yang ditentukan lalu menampilkan hasilnya sebagai persegi panjang baru.

operator RectF RectF.plus(xy: Float)

Menampilkan persegi panjang baru yang merepresentasikan offset persegi panjang ini menurut jumlah yang ditetapkan pada sumbu X dan Y.

operator RectF RectF.plus(xy: PointF)

Menampilkan persegi panjang baru yang merepresentasikan offset persegi panjang ini menurut titik yang ditetapkan.

operator RectF RectF.times(factor: Int)

Menampilkan persegi panjang baru yang merepresentasikan komponen persegi panjang ini, yang masing-masing disesuaikan skalanya oleh faktor.

operator RectF RectF.times(factor: Float)

Menampilkan persegi panjang baru yang merepresentasikan komponen persegi panjang ini, yang masing-masing disesuaikan skalanya oleh faktor.

Rect RectF.toRect()

Menampilkan representasi Rect persegi panjang ini.

Region RectF.toRegion()

Menampilkan representasi Region persegi panjang ini.

RectF RectF.transform(m: Matrix)

Mengubah persegi panjang ini di tempatnya menggunakan Matrix yang disediakan dan menampilkan persegi panjang ini.

infix Region RectF.xor(r: RectF)

Menampilkan gabungan dua persegi panjang minus titik potongnya sebagai region baru.

Untuk android.graphics.Region
infix Region Region.and(r: Rect)

Menampilkan titik potong region ini dan Rect yang ditentukan sebagai region baru.

infix Region Region.and(r: Region)

Menampilkan titik potong region ini dan region yang ditentukan sebagai region baru.

operator Boolean Region.contains(p: Point)

Menampilkan true jika region berisi Point yang ditetapkan.

Unit Region.forEach(action: (rect: Rect) -> Unit)

Melakukan tindakan yang ditentukan pada setiap persegi panjang di region ini.

operator Iterator<Rect> Region.iterator()

Mengembalikan Iterator ke persegi panjang di region ini.

operator Region Region.minus(r: Rect)

Menampilkan selisih region ini dan Rect yang ditetapkan sebagai region baru.

operator Region Region.minus(r: Region)

Menampilkan selisih region ini dan region yang ditentukan sebagai region baru.

operator Region Region.not()

Menampilkan negasi region ini sebagai region baru.

infix Region Region.or(r: Rect)

Menampilkan gabungan region ini dan Rect yang ditentukan sebagai region baru.

infix Region Region.or(r: Region)

Menampilkan gabungan region ini dan region yang ditentukan sebagai region baru.

operator Region Region.plus(r: Rect)

Menampilkan gabungan region ini dan Rect yang ditentukan sebagai region baru.

operator Region Region.plus(r: Region)

Menampilkan gabungan region ini dan region yang ditentukan sebagai region baru.

operator Region Region.unaryMinus()

Menampilkan negasi region ini sebagai region baru.

infix Region Region.xor(r: Rect)

Menampilkan gabungan region ini minus titik potongnya dan Rect yang ditentukan sebagai region baru.

infix Region Region.xor(r: Region)

Menampilkan gabungan region ini minus titik potongnya dan region yang ditentukan sebagai region baru.

Untuk android.graphics.Shader
Unit Shader.transform(block: Matrix.() -> Unit)

Menggabungkan blok yang ditentukan dalam panggilan ke Shader.getLocalMatrix dan Shader.setLocalMatrix.

Untuk kotlin.Int
operator Int Int.component1()

Menampilkan komponen alfa untuk int warna.

operator Int Int.component2()

Menampilkan komponen merah untuk int warna.

operator Int Int.component3()

Menampilkan komponen hijau untuk int warna.

operator Int Int.component4()

Menampilkan komponen biru untuk int warna.

infix Long Int.convertTo(colorSpace: Named)

Mengonversi penerima int warna menjadi long warna di ruang warna yang ditentukan.

infix Long Int.convertTo(colorSpace: ColorSpace)

Mengonversi penerima int warna menjadi long warna di ruang warna yang ditentukan.

Color Int.toColor()

Membuat instance Warna baru dari int warna.

Long Int.toColorLong()

Mengonversi int warna ARGB yang ditentukan menjadi long warna RGBA di ruang warna sRGB.

Untuk kotlin.Long
operator Float Long.component1()

Menampilkan komponen pertama untuk warna.

operator Float Long.component2()

Menampilkan komponen kedua untuk warna.

operator Float Long.component3()

Menampilkan komponen ketiga untuk warna.

operator Float Long.component4()

Menampilkan komponen keempat untuk warna.

infix Long Long.convertTo(colorSpace: Named)

Mengonversi penerima long warna menjadi long warna dalam ruang warna yang ditentukan.

infix Long Long.convertTo(colorSpace: ColorSpace)

Mengonversi penerima long warna menjadi long warna dalam ruang warna yang ditentukan.

Color Long.toColor()

Membuat instance Color baru dari long warna.

Int Long.toColorInt()

Mengonversi long warna yang ditentukan menjadi int warna ARGB.

Untuk kotlin.String
Int String.toColorInt()

Menampilkan warna Int yang sesuai untuk String ini.

Properti ekstensi

Untuk kotlin.Int
Int Int.alpha()

Menampilkan komponen alfa untuk int warna.

Int Int.blue()

Menampilkan komponen biru untuk int warna.

Int Int.green()

Menampilkan komponen hijau untuk int warna.

Float Int.luminance()

Menampilkan luminans relatif int warna, dengan asumsi encoding sRGB.

Int Int.red()

Menampilkan komponen merah untuk int warna.

Untuk kotlin.Long
Float Long.alpha()

Menampilkan komponen alfa untuk long warna.

Float Long.blue()

Menampilkan komponen biru untuk long warna.

ColorSpace Long.colorSpace()

Menampilkan ruang warna yang dienkode dalam long warna yang ditentukan.

Float Long.green()

Menampilkan komponen hijau untuk long warna.

Boolean Long.isSrgb()

Menunjukkan apakah warna berada dalam ruang warna sRGB.

Boolean Long.isWideGamut()

Menunjukkan apakah warna berada dalam ruang warna gamut lebar.

Float Long.luminance()

Menampilkan luminans relatif warna.

Float Long.red()

Menampilkan komponen merah untuk long warna.

Fungsi level atas

Bitmap createBitmap(width: Int, height: Int, config: Config = Bitmap.Config.ARGB_8888)

Menampilkan bitmap yang dapat berubah dengan lebar dan tinggi yang ditentukan.

Bitmap createBitmap(width: Int, height: Int, config: Config = Bitmap.Config.ARGB_8888, hasAlpha: Boolean = true, colorSpace: ColorSpace = ColorSpace.get(ColorSpace.Named.SRGB))

Menampilkan bitmap yang dapat berubah dengan lebar dan tinggi yang ditentukan.

Matrix rotationMatrix(degrees: Float, px: Float = 0.0f, py: Float = 0.0f)

Membuat matriks rotasi, yang ditentukan oleh sudut rotasi dalam derajat mendekati titik pivot yang terletak pada koordinat (px, py).

Matrix scaleMatrix(sx: Float = 1.0f, sy: Float = 1.0f)

Membuat matriks skala dengan faktor skala sx dan sy masing-masing pada sumbu x dan y.

Matrix translationMatrix(tx: Float = 0.0f, ty: Float = 0.0f)

Membuat matriks terjemahan dengan jumlah terjemahan tx dan ty masing-masing pada sumbu x dan y.

androidx.core.graphics.drawable

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.graphics.Bitmap
Icon Bitmap.toAdaptiveIcon()

Membuat Ikon dari Bitmap adaptif ini.

BitmapDrawable Bitmap.toDrawable(resources: Resources)

Membuat BitmapDrawable dari Bitmap ini.

Icon Bitmap.toIcon()

Membuat Ikon dari Bitmap ini.

Untuk android.graphics.Color
ColorDrawable Color.toDrawable()

Membuat ColorDrawable dari Color ini (melalui Color.toArgb).

Untuk android.graphics.drawable.Drawable
Bitmap Drawable.toBitmap(@Px width: Int = intrinsicWidth, @Px height: Int = intrinsicHeight, config: Config? = null)

Menampilkan representasi Bitmap dari Drawable ini.

Unit Drawable.updateBounds(@Px left: Int = bounds.left, @Px top: Int = bounds.top, @Px right: Int = bounds.right, @Px bottom: Int = bounds.bottom)

Mengupdate batas drawable ini.

Untuk android.net.Uri
Icon Uri.toIcon()

Membuat Ikon dari Uri ini.

Untuk kotlin.ByteArray
Icon ByteArray.toIcon()

Membuat Ikon dari ByteArray ini.

Untuk kotlin.Int
ColorDrawable Int.toDrawable()

Membuat ColorDrawable dari nilai warna ini.

androidx.core.location

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.location.Location
operator Double Location.component1()

Menampilkan lintang Location ini.

operator Double Location.component2()

Menampilkan bujur Location ini.

androidx.core.net

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.net.Uri
File Uri.toFile()

Membuat File dari Uri yang ditentukan.

Untuk java.io.File
Uri File.toUri()

Membuat Uri dari file yang ditentukan.

Untuk kotlin.String
Uri String.toUri()

Membuat Uri dari string URI yang dienkode.

androidx.core.os

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.os.Handler
Runnable Handler.postAtTime(uptimeMillis: Long, token: Any? = null, crossinline action: () -> Unit)

Versi Handler.postAtTime yang mengurutkan ulang parameter, yang memungkinkan tindakan ditempatkan di luar tanda kurung.

Runnable Handler.postDelayed(delayInMillis: Long, token: Any? = null, crossinline action: () -> Unit)

Versi Handler.postDelayed yang mengurutkan ulang parameter, yang memungkinkan tindakan ditempatkan di luar tanda kurung.

Fungsi level atas

Bundle bundleOf(vararg pairs: Pair<String, Any?>)

Menampilkan Bundle baru dengan key-value pair yang ditentukan sebagai elemen.

PersistableBundle persistableBundleOf(vararg pairs: Pair<String, Any?>)

Menampilkan PersistableBundle baru dengan key-value pair yang ditentukan sebagai elemen.

T trace(sectionName: String, block: () -> T)

Menggabungkan blok yang ditentukan dalam panggilan ke Trace.beginSection (dengan sectionName yang disediakan) dan Trace.endSection.

androidx.core.text

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.text.Spannable
Unit Spannable.clearSpans()

Menghapus semua span dari teks ini.

operator Unit Spannable.set(start: Int, end: Int, span: Any)

Menambahkan span ke rentang awal&hellip;akhir teks.

operator Unit Spannable.set(range: IntRange, span: Any)

Menambahkan span ke rentang teks.

Untuk android.text.SpannableStringBuilder
SpannableStringBuilder SpannableStringBuilder.backgroundColor(color: Int, builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam BackgroundColorSpan.

SpannableStringBuilder SpannableStringBuilder.bold(builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam StyleSpan yang ditebalkan.

SpannableStringBuilder SpannableStringBuilder.color(color: Int, builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam ForegroundColorSpan.

SpannableStringBuilder SpannableStringBuilder.inSpans(vararg spans: Any, builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam span.

SpannableStringBuilder SpannableStringBuilder.inSpans(span: Any, builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam span.

SpannableStringBuilder SpannableStringBuilder.italic(builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam StyleSpan yang dimiringkan.

SpannableStringBuilder SpannableStringBuilder.scale(proportion: Float, builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam RelativeSizeSpan.

SpannableStringBuilder SpannableStringBuilder.strikeThrough(builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam StrikethroughSpan.

SpannableStringBuilder SpannableStringBuilder.subscript(builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam SubscriptSpan.

SpannableStringBuilder SpannableStringBuilder.superscript(builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam SuperscriptSpan.

SpannableStringBuilder SpannableStringBuilder.underline(builderAction: SpannableStringBuilder.() -> Unit)

Menggabungkan teks yang ditambahkan di builderAction dalam UnderlineSpan.

Untuk android.text.Spanned
Array<out T> Spanned.getSpans(start: Int = 0, end: Int = length)

Mendapatkan semua span yang merupakan instance T.

String Spanned.toHtml(option: Int = TO_HTML_PARAGRAPH_LINES_CONSECUTIVE)

Menampilkan string HTML dari span dalam Spanned ini.

Untuk kotlin.CharSequence
Boolean CharSequence.isDigitsOnly()

Menampilkan apakah CharSequence yang ditentukan hanya berisi digit.

Spannable CharSequence.toSpannable()

Menampilkan Spannable baru dari CharSequence, atau sumbernya sendiri jika sudah merupakan instance SpannableString.

Spanned CharSequence.toSpanned()

Menampilkan Spanned baru dari CharSequence, atau sumbernya sendiri jika sudah merupakan instance SpannedString.

Int CharSequence.trimmedLength()

Menampilkan panjang yang akan dimiliki oleh CharSequence yang ditetapkan jika karakter kontrol ASCII dan ruang dipangkas dari awal dan akhir, seperti dengan String.trim.

Untuk kotlin.String
String String.htmlEncode()

Mengenkode string dengan HTML.

Spanned String.parseAsHtml(flags: Int = FROM_HTML_MODE_LEGACY, imageGetter: ImageGetter? = null, tagHandler: TagHandler? = null)

Menampilkan Spanned dari penguraian string ini sebagai HTML.

Properti ekstensi

Untuk java.util.Locale
Int Locale.layoutDirection()

Menampilkan arah tata letak untuk lokal yang ditentukan.

Fungsi level atas

SpannedString buildSpannedString(builderAction: SpannableStringBuilder.() -> Unit)

Membuat string baru dengan mengisi SpannableStringBuilder yang baru dibuat menggunakan builderAction yang diberikan, lalu mengonversinya menjadi SpannedString.

androidx.core.transition

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk 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 = {})

Menambahkan pemroses ke Transisi ini menggunakan tindakan yang diberikan.

TransitionListener Transition.doOnCancel(crossinline action: (transition: Transition) -> Unit)

Menambahkan tindakan yang akan dipanggil saat transisi ini dibatalkan.

TransitionListener Transition.doOnEnd(crossinline action: (transition: Transition) -> Unit)

Menambahkan tindakan yang akan dipanggil saat transisi ini berakhir.

TransitionListener Transition.doOnPause(crossinline action: (transition: Transition) -> Unit)

Menambahkan tindakan yang akan dipanggil saat transisi ini dijeda.

TransitionListener Transition.doOnResume(crossinline action: (transition: Transition) -> Unit)

Menambahkan tindakan yang akan dipanggil saat transisi ini dilanjutkan setelah dijeda.

TransitionListener Transition.doOnStart(crossinline action: (transition: Transition) -> Unit)

Menambahkan tindakan yang akan dipanggil saat transisi ini dimulai.

androidx.core.util

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.util.AtomicFile
ByteArray AtomicFile.readBytes()

Mendapatkan seluruh konten file ini sebagai array byte.

String AtomicFile.readText(charset: Charset = Charsets.UTF_8)

Mendapatkan seluruh konten file ini sebagai String menggunakan UTF-8 atau charset yang ditentukan.

Unit AtomicFile.tryWrite(block: (out: FileOutputStream) -> Unit)

Melakukan operasi tulis dalam blok pada file ini.

Unit AtomicFile.writeBytes(array: ByteArray)

Menetapkan konten file ini sebagai array byte.

Unit AtomicFile.writeText(text: String, charset: Charset = Charsets.UTF_8)

Menetapkan konten file ini sebagai teks yang dienkode menggunakan UTF-8 atau charset yang ditentukan.

Untuk android.util.LongSparseArray
operator Boolean LongSparseArray<T>.contains(key: Long)

Menampilkan true jika koleksi berisi kunci.

Boolean LongSparseArray<T>.containsKey(key: Long)

Menampilkan true jika koleksi berisi kunci.

Boolean LongSparseArray<T>.containsValue(value: T)

Menampilkan true jika koleksi berisi nilai.

Unit LongSparseArray<T>.forEach(action: (key: Long, value: T) -> Unit)

Melakukan tindakan yang ditentukan untuk setiap entri kunci/nilai.

T LongSparseArray<T>.getOrDefault(key: Long, defaultValue: T)

Menampilkan nilai yang sesuai dengan kunci, atau defaultValue jika tidak ada.

T LongSparseArray<T>.getOrElse(key: Long, defaultValue: () -> T)

Menampilkan nilai yang sesuai dengan kunci, atau dari defaultValue jika tidak ada.

Boolean LongSparseArray<T>.isEmpty()

Menampilkan true jika koleksi tidak berisi elemen.

Boolean LongSparseArray<T>.isNotEmpty()

Menampilkan true jika koleksi berisi elemen.

LongIterator LongSparseArray<T>.keyIterator()

Menampilkan iterator ke kunci koleksi.

operator LongSparseArray<T> LongSparseArray<T>.plus(other: LongSparseArray<T>)

Membuat koleksi baru dengan menambahkan atau mengganti entri dari lainnya.

Unit LongSparseArray<T>.putAll(other: LongSparseArray<T>)

Mengupdate koleksi ini dengan menambahkan atau mengganti entri dari lainnya.

Boolean LongSparseArray<T>.remove(key: Long, value: T)

Menghapus entri untuk kunci hanya jika dipetakan ke nilai.

operator Unit LongSparseArray<T>.set(key: Long, value: T)

Mengizinkan penggunaan operator indeks untuk menyimpan nilai dalam koleksi.

Iterator<T> LongSparseArray<T>.valueIterator()

Menampilkan iterator ke nilai koleksi.

Untuk android.util.Pair
operator F Pair<F, S>.component1()

Menampilkan komponen pertama untuk pasangan.

operator S Pair<F, S>.component2()

Menampilkan komponen kedua untuk pasangan.

Pair<F, S> Pair<F, S>.toKotlinPair()

Menampilkan Pair ini sebagai kotlin.Pair.

Untuk android.util.Range
infix Range<T> Range<T>.and(other: Range<T>)

Menampilkan titik potong rentang ini dan lainnya.

operator Range<T> Range<T>.plus(value: T)

Menampilkan rentang terkecil yang menyertakannya dan nilai.

operator Range<T> Range<T>.plus(other: Range<T>)

Menampilkan rentang terkecil yang menyertakannya dan lainnya.

ClosedRange<T> Range<T>.toClosedRange()

Menampilkan Range ini sebagai ClosedRange.

Untuk android.util.Size
operator Int Size.component1()

Menampilkan "width", komponen pertama untuk Size ini.

operator Int Size.component2()

Menampilkan "height", komponen kedua untuk Size ini.

Untuk android.util.SizeF
operator Float SizeF.component1()

Menampilkan "width", komponen pertama untuk SizeF ini.

operator Float SizeF.component2()

Menampilkan "height", komponen kedua untuk SizeF ini.

Untuk android.util.SparseArray
operator Boolean SparseArray<T>.contains(key: Int)

Menampilkan true jika koleksi berisi kunci.

Boolean SparseArray<T>.containsKey(key: Int)

Menampilkan true jika koleksi berisi kunci.

Boolean SparseArray<T>.containsValue(value: T)

Menampilkan true jika koleksi berisi nilai.

Unit SparseArray<T>.forEach(action: (key: Int, value: T) -> Unit)

Melakukan tindakan yang ditentukan untuk setiap entri kunci/nilai.

T SparseArray<T>.getOrDefault(key: Int, defaultValue: T)

Menampilkan nilai yang sesuai dengan kunci, atau defaultValue jika tidak ada.

T SparseArray<T>.getOrElse(key: Int, defaultValue: () -> T)

Menampilkan nilai yang sesuai dengan kunci, atau dari defaultValue jika tidak ada.

Boolean SparseArray<T>.isEmpty()

Menampilkan true jika koleksi tidak berisi elemen.

Boolean SparseArray<T>.isNotEmpty()

Menampilkan true jika koleksi berisi elemen.

IntIterator SparseArray<T>.keyIterator()

Menampilkan iterator ke kunci koleksi.

operator SparseArray<T> SparseArray<T>.plus(other: SparseArray<T>)

Membuat koleksi baru dengan menambahkan atau mengganti entri dari lainnya.

Unit SparseArray<T>.putAll(other: SparseArray<T>)

Mengupdate koleksi ini dengan menambahkan atau mengganti entri dari lainnya.

Boolean SparseArray<T>.remove(key: Int, value: T)

Menghapus entri untuk kunci hanya jika dipetakan ke nilai.

operator Unit SparseArray<T>.set(key: Int, value: T)

Mengizinkan penggunaan operator indeks untuk menyimpan nilai dalam koleksi.

Iterator<T> SparseArray<T>.valueIterator()

Menampilkan iterator ke nilai koleksi.

Untuk android.util.SparseBooleanArray
operator Boolean SparseBooleanArray.contains(key: Int)

Menampilkan true jika koleksi berisi kunci.

Boolean SparseBooleanArray.containsKey(key: Int)

Menampilkan true jika koleksi berisi kunci.

Boolean SparseBooleanArray.containsValue(value: Boolean)

Menampilkan true jika koleksi berisi nilai.

Unit SparseBooleanArray.forEach(action: (key: Int, value: Boolean) -> Unit)

Melakukan tindakan yang ditentukan untuk setiap entri kunci/nilai.

Boolean SparseBooleanArray.getOrDefault(key: Int, defaultValue: Boolean)

Menampilkan nilai yang sesuai dengan kunci, atau defaultValue jika tidak ada.

Boolean SparseBooleanArray.getOrElse(key: Int, defaultValue: () -> Boolean)

Menampilkan nilai yang sesuai dengan kunci, atau dari defaultValue jika tidak ada.

Boolean SparseBooleanArray.isEmpty()

Menampilkan true jika koleksi tidak berisi elemen.

Boolean SparseBooleanArray.isNotEmpty()

Menampilkan true jika koleksi berisi elemen.

IntIterator SparseBooleanArray.keyIterator()

Menampilkan iterator ke kunci koleksi.

operator SparseBooleanArray SparseBooleanArray.plus(other: SparseBooleanArray)

Membuat koleksi baru dengan menambahkan atau mengganti entri dari lainnya.

Unit SparseBooleanArray.putAll(other: SparseBooleanArray)

Mengupdate koleksi ini dengan menambahkan atau mengganti entri dari lainnya.

Boolean SparseBooleanArray.remove(key: Int, value: Boolean)

Menghapus entri untuk kunci hanya jika dipetakan ke nilai.

operator Unit SparseBooleanArray.set(key: Int, value: Boolean)

Mengizinkan penggunaan operator indeks untuk menyimpan nilai dalam koleksi.

BooleanIterator SparseBooleanArray.valueIterator()

Menampilkan iterator ke nilai koleksi.

Untuk android.util.SparseIntArray
operator Boolean SparseIntArray.contains(key: Int)

Menampilkan true jika koleksi berisi kunci.

Boolean SparseIntArray.containsKey(key: Int)

Menampilkan true jika koleksi berisi kunci.

Boolean SparseIntArray.containsValue(value: Int)

Menampilkan true jika koleksi berisi nilai.

Unit SparseIntArray.forEach(action: (key: Int, value: Int) -> Unit)

Melakukan tindakan yang ditentukan untuk setiap entri kunci/nilai.

Int SparseIntArray.getOrDefault(key: Int, defaultValue: Int)

Menampilkan nilai yang sesuai dengan kunci, atau defaultValue jika tidak ada.

Int SparseIntArray.getOrElse(key: Int, defaultValue: () -> Int)

Menampilkan nilai yang sesuai dengan kunci, atau dari defaultValue jika tidak ada.

Boolean SparseIntArray.isEmpty()

Menampilkan true jika koleksi tidak berisi elemen.

Boolean SparseIntArray.isNotEmpty()

Menampilkan true jika koleksi berisi elemen.

IntIterator SparseIntArray.keyIterator()

Menampilkan iterator ke kunci koleksi.

operator SparseIntArray SparseIntArray.plus(other: SparseIntArray)

Membuat koleksi baru dengan menambahkan atau mengganti entri dari lainnya.

Unit SparseIntArray.putAll(other: SparseIntArray)

Mengupdate koleksi ini dengan menambahkan atau mengganti entri dari lainnya.

Boolean SparseIntArray.remove(key: Int, value: Int)

Menghapus entri untuk kunci hanya jika dipetakan ke nilai.

operator Unit SparseIntArray.set(key: Int, value: Int)

Mengizinkan penggunaan operator indeks untuk menyimpan nilai dalam koleksi.

IntIterator SparseIntArray.valueIterator()

Menampilkan iterator ke nilai koleksi.

Untuk android.util.SparseLongArray
operator Boolean SparseLongArray.contains(key: Int)

Menampilkan true jika koleksi berisi kunci.

Boolean SparseLongArray.containsKey(key: Int)

Menampilkan true jika koleksi berisi kunci.

Boolean SparseLongArray.containsValue(value: Long)

Menampilkan true jika koleksi berisi nilai.

Unit SparseLongArray.forEach(action: (key: Int, value: Long) -> Unit)

Melakukan tindakan yang ditentukan untuk setiap entri kunci/nilai.

Long SparseLongArray.getOrDefault(key: Int, defaultValue: Long)

Menampilkan nilai yang sesuai dengan kunci, atau defaultValue jika tidak ada.

Long SparseLongArray.getOrElse(key: Int, defaultValue: () -> Long)

Menampilkan nilai yang sesuai dengan kunci, atau dari defaultValue jika tidak ada.

Boolean SparseLongArray.isEmpty()

Menampilkan true jika koleksi tidak berisi elemen.

Boolean SparseLongArray.isNotEmpty()

Menampilkan true jika koleksi berisi elemen.

IntIterator SparseLongArray.keyIterator()

Menampilkan iterator ke kunci koleksi.

operator SparseLongArray SparseLongArray.plus(other: SparseLongArray)

Membuat koleksi baru dengan menambahkan atau mengganti entri dari lainnya.

Unit SparseLongArray.putAll(other: SparseLongArray)

Mengupdate koleksi ini dengan menambahkan atau mengganti entri dari lainnya.

Boolean SparseLongArray.remove(key: Int, value: Long)

Menghapus entri untuk kunci hanya jika ditetapkan ke nilai.

operator Unit SparseLongArray.set(key: Int, value: Long)

Mengizinkan penggunaan operator indeks untuk menyimpan nilai dalam koleksi.

LongIterator SparseLongArray.valueIterator()

Menampilkan iterator ke nilai koleksi.

Untuk kotlin.Double
Half Double.toHalf()

Menampilkan instance Half yang merepresentasikan Double yang ditentukan.

Untuk kotlin.Float
Half Float.toHalf()

Menampilkan instance Half yang merepresentasikan Float yang ditentukan.

Untuk kotlin.Pair
Pair<F, S> Pair<F, S>.toAndroidPair()

Menampilkan kotlin.Pair ini sebagai Pair Android.

Untuk kotlin.Short
Half Short.toHalf()

Menampilkan instance Half yang merepresentasikan Short yang ditentukan.

Untuk kotlin.String
Half String.toHalf()

Menampilkan instance Half yang merepresentasikan String yang ditentukan.

Untuk kotlin.ranges.ClosedRange
Range<T> ClosedRange<T>.toRange()

Menampilkan ClosedRange ini sebagai Range.

Properti ekstensi

Untuk android.util.LongSparseArray
Int LongSparseArray<T>.size()

Menampilkan jumlah key-value pair dalam koleksi.

Untuk android.util.SparseArray
Int SparseArray<T>.size()

Menampilkan jumlah key-value pair dalam koleksi.

Untuk android.util.SparseBooleanArray
Int SparseBooleanArray.size()

Menampilkan jumlah key-value pair dalam koleksi.

Untuk android.util.SparseIntArray
Int SparseIntArray.size()

Menampilkan jumlah key-value pair dalam koleksi.

Untuk android.util.SparseLongArray
Int SparseLongArray.size()

Menampilkan jumlah entri kunci/nilai dalam koleksi.

Fungsi level atas

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 = { _, _, _, _ -> })

Membuat LruCache dengan parameter yang ditentukan.

infix Range<T> T.rangeTo(that: T)

Membuat rentang dari nilai Comparable ini ke nilai tersebut.

androidx.core.view

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk android.view.Menu
operator Boolean Menu.contains(item: MenuItem)

Menampilkan true jika item ditemukan dalam menu ini.

Unit Menu.forEach(action: (item: MenuItem) -> Unit)

Melakukan tindakan yang ditentukan pada setiap item dalam menu ini.

Unit Menu.forEachIndexed(action: (index: Int, item: MenuItem) -> Unit)

Melakukan tindakan yang ditentukan pada setiap item dalam menu ini, yang menyediakan indeks berurutannya.

operator MenuItem Menu.get(index: Int)

Menampilkan menu pada indeks.

Boolean Menu.isEmpty()

Menampilkan true jika menu ini tidak berisi item.

Boolean Menu.isNotEmpty()

Menampilkan true jika menu ini berisi satu atau lebih item.

operator MutableIterator<MenuItem> Menu.iterator()

Mengembalikan MutableIterator ke item dalam menu ini.

operator Unit Menu.minusAssign(item: MenuItem)

Menghapus item dari menu ini.

Untuk android.view.View
Unit View.doOnAttach(crossinline action: (view: View) -> Unit)

Melakukan tindakan yang ditentukan saat tampilan ini disematkan ke jendela.

Unit View.doOnDetach(crossinline action: (view: View) -> Unit)

Melakukan tindakan yang ditentukan saat tampilan ini dilepaskan dari jendela.

Unit View.doOnLayout(crossinline action: (view: View) -> Unit)

Melakukan tindakan yang ditentukan saat tampilan ini dibentangkan.

Unit View.doOnNextLayout(crossinline action: (view: View) -> Unit)

Melakukan tindakan yang ditentukan saat tampilan ini selanjutnya dibentangkan.

OneShotPreDrawListener View.doOnPreDraw(crossinline action: (view: View) -> Unit)

Melakukan tindakan yang ditentukan saat hierarki tampilan akan digambar.

Bitmap View.drawToBitmap(config: Config = Bitmap.Config.ARGB_8888)

Menampilkan representasi Bitmap dari View ini.

Runnable View.postDelayed(delayInMillis: Long, crossinline action: () -> Unit)

Versi View.postDelayed yang mengurutkan ulang parameter, yang memungkinkan tindakan ditempatkan di luar tanda kurung.

Runnable View.postOnAnimationDelayed(delayInMillis: Long, crossinline action: () -> Unit)

Versi View.postOnAnimationDelayed yang mengurutkan ulang parameter, yang memungkinkan tindakan ditempatkan di luar tanda kurung.

Unit View.setPadding(@Px size: Int)

Menetapkan padding tampilan.

Unit View.updateLayoutParams(block: LayoutParams.() -> Unit)

Mengeksekusi blok dengan layoutParams View dan menetapkan ulang layoutParams dengan versi yang telah diupdate.

Unit View.updateLayoutParams(block: T.() -> Unit)

Mengeksekusi blok dengan versi layoutParams View yang diketik dan menetapkan ulang layoutParams dengan versi yang telah diupdate.

Unit View.updatePadding(@Px left: Int = paddingLeft, @Px top: Int = paddingTop, @Px right: Int = paddingRight, @Px bottom: Int = paddingBottom)

Mengupdate padding tampilan ini.

Unit View.updatePaddingRelative(@Px start: Int = paddingStart, @Px top: Int = paddingTop, @Px end: Int = paddingEnd, @Px bottom: Int = paddingBottom)

Mengupdate padding relatif tampilan ini.

Untuk android.view.ViewGroup
operator Boolean ViewGroup.contains(view: View)

Menampilkan true jika tampilan ditemukan dalam grup tampilan ini.

Unit ViewGroup.forEach(action: (view: View) -> Unit)

Melakukan tindakan yang ditentukan pada setiap tampilan dalam grup tampilan ini.

Unit ViewGroup.forEachIndexed(action: (index: Int, view: View) -> Unit)

Melakukan tindakan yang ditentukan pada setiap tampilan dalam grup tampilan ini, yang memberikan indeks berurutannya.

operator View ViewGroup.get(index: Int)

Menampilkan tampilan pada indeks.

Boolean ViewGroup.isEmpty()

Menampilkan true jika grup tampilan ini tidak berisi tampilan.

Boolean ViewGroup.isNotEmpty()

Menampilkan true jika grup tampilan ini berisi satu atau lebih tampilan.

operator MutableIterator<View> ViewGroup.iterator()

Mengembalikan MutableIterator ke tampilan dalam grup tampilan ini.

operator Unit ViewGroup.minusAssign(view: View)

Menghapus tampilan dari grup tampilan ini.

operator Unit ViewGroup.plusAssign(view: View)

Menambahkan tampilan ke grup tampilan ini.

Untuk android.view.ViewGroup.MarginLayoutParams
Unit MarginLayoutParams.setMargins(@Px size: Int)

Menetapkan margin dalam MarginLayoutParams ViewGroup.

Unit MarginLayoutParams.updateMargins(@Px left: Int = leftMargin, @Px top: Int = topMargin, @Px right: Int = rightMargin, @Px bottom: Int = bottomMargin)

Mengupdate margin dalam ViewGroup.MarginLayoutParams ViewGroup.

Unit MarginLayoutParams.updateMarginsRelative(@Px start: Int = marginStart, @Px top: Int = topMargin, @Px end: Int = marginEnd, @Px bottom: Int = bottomMargin)

Mengupdate margin relatif dalam MarginLayoutParams ViewGroup.

Properti ekstensi

Untuk android.view.Menu
Sequence<MenuItem> Menu.children()

Mengembalikan Sequence ke item dalam menu ini.

Int Menu.size()

Menampilkan jumlah item dalam menu ini.

Untuk android.view.View
Boolean View.isGone()

Menampilkan true jika visibilitas tampilan ini adalah View.GONE, dan menampilkan false untuk kondisi lainnya.

Boolean View.isInvisible()

Menampilkan true jika visibilitas tampilan ini adalah View.INVISIBLE, dan menampilkan false untuk kondisi lainnya.

Boolean View.isVisible()

Menampilkan true jika visibilitas tampilan ini adalah View.VISIBLE, dan menampilkan false untuk kondisi lainnya.

Int View.marginBottom()

Menampilkan margin bawah jika LayoutParams tampilan ini adalah ViewGroup.MarginLayoutParams, dan menampilkan 0 untuk kondisi lainnya.

Int View.marginEnd()

Menampilkan margin akhir jika LayoutParams tampilan ini adalah ViewGroup.MarginLayoutParams, dan menampilkan 0 untuk kondisi lainnya.

Int View.marginLeft()

Menampilkan margin kiri jika LayoutParams tampilan ini adalah ViewGroup.MarginLayoutParams, dan menampilkan 0 untuk kondisi lainnya.

Int View.marginRight()

Menampilkan margin kanan jika LayoutParams tampilan ini adalah ViewGroup.MarginLayoutParams, dan menampilkan 0 untuk kondisi lainnya.

Int View.marginStart()

Menampilkan margin awal jika LayoutParams tampilan ini adalah ViewGroup.MarginLayoutParams, dan menampilkan 0 untuk kondisi lainnya.

Int View.marginTop()

Menampilkan margin atas jika LayoutParams tampilan ini adalah ViewGroup.MarginLayoutParams, dan menampilkan 0 untuk kondisi lainnya.

Untuk android.view.ViewGroup
Sequence<View> ViewGroup.children()

Mengembalikan Sequence ke tampilan turunan dalam grup tampilan ini.

Int ViewGroup.size()

Menampilkan jumlah tampilan dalam grup tampilan ini.

androidx.core.widget

Dependensi

Groovy

dependencies {
    implementation "androidx.core:core-ktx:1.13.1"
}

Kotlin

dependencies {
    implementation("androidx.core:core-ktx:1.13.1")
}

Fungsi ekstensi

Untuk 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 = {})

Menambahkan pemroses yang diubah dengan teks ke TextView ini menggunakan tindakan yang diberikan

TextWatcher TextView.doAfterTextChanged(crossinline action: (text: Editable?) -> Unit)

Menambahkan tindakan yang akan dipanggil setelah teks berubah.

TextWatcher TextView.doBeforeTextChanged(crossinline action: (text: CharSequence?, start: Int, count: Int, after: Int) -> Unit)

Menambahkan tindakan yang akan dipanggil sebelum teks berubah.

TextWatcher TextView.doOnTextChanged(crossinline action: (text: CharSequence?, start: Int, count: Int, after: Int) -> Unit)

Menambahkan tindakan yang akan dipanggil saat teks berubah.

androidx.dynamicanimation.animation

Dependensi

Groovy

dependencies {
    implementation "androidx.dynamicanimation:dynamicanimation-ktx:1.1.0-alpha03"
}

Kotlin

dependencies {
    implementation("androidx.dynamicanimation:dynamicanimation-ktx:1.1.0-alpha03")
}

Fungsi ekstensi

Untuk SpringAnimation
SpringAnimation SpringAnimation.withSpringForceProperties(func: SpringForce.() -> Unit)

Mengupdate atau menerapkan properti gaya pegas seperti SpringForce.mDampingRatio, SpringForce.mFinalPosition, dan kekakuan pada SpringAnimation.

Fungsi level atas

FlingAnimation flingAnimationOf(setter: (Float) -> Unit, getter: () -> Float)

Membuat FlingAnimation untuk properti yang dapat diakses melalui penyetel dan pengambil yang diberikan.

SpringAnimation springAnimationOf(setter: (Float) -> Unit, getter: () -> Float, finalPosition: Float = Float.NaN)

Membuat SpringAnimation untuk properti yang dapat diakses melalui penyetel dan pengambil yang diberikan.

androidx.fragment.app

Dependensi

Groovy

dependencies {
    implementation "androidx.fragment:fragment-ktx:1.6.2"
}

Kotlin

dependencies {
    implementation("androidx.fragment:fragment-ktx:1.6.2")
}

Fungsi ekstensi

Untuk android.view.View
F View.findFragment()

Menemukan Fragment yang terkait dengan View.

Untuk Fragment
Lazy<VM> Fragment.activityViewModels(noinline factoryProducer: () -> ViewModelProvider.Factory = null)

Menampilkan delegasi properti untuk mengakses ViewModel aktivitas induk, jika factoryProducer ditentukan, ViewModelProvider.Factory yang ditampilkannya akan digunakan untuk membuat ViewModel terlebih dahulu.

Lazy<VM> Fragment.createViewModelLazy(viewModelClass: KClass<VM>, storeProducer: () -> ViewModelStore, factoryProducer: () -> ViewModelProvider.Factory = null)

Metode bantuan untuk pembuatan ViewModelLazy, yang menyelesaikan null yang diteruskan sebagai factoryProducer ke setelan pabrik default.

Lazy<VM> Fragment.viewModels(noinline ownerProducer: () -> ViewModelStoreOwner = { this }, noinline factoryProducer: () -> ViewModelProvider.Factory = null)

Menampilkan delegasi properti untuk mengakses ViewModel secara default yang dibatasi pada Fragment ini:

Untuk FragmentTransaction
FragmentTransaction FragmentTransaction.add(@IdRes containerViewId: Int, tag: String? = null, args: Bundle? = null)

Menambahkan fragmen ke FragmentManager terkait, yang meng-inflate tampilan Fragment ke tampilan container yang ditetapkan oleh containerViewId, agar nantinya diambil melalui FragmentManager.findFragmentById.

FragmentTransaction FragmentTransaction.add(tag: String, args: Bundle? = null)

Menambahkan fragmen ke FragmentManager yang terkait tanpa menambahkan Fragment ke tampilan container mana pun.

FragmentTransaction FragmentTransaction.replace(@IdRes containerViewId: Int, tag: String? = null, args: Bundle? = null)

Mengganti fragmen yang ada yang sebelumnya ditambahkan ke container.

Untuk FragmentManager
Unit FragmentManager.commit(allowStateLoss: Boolean = false, body: FragmentTransaction.() -> Unit)

Menjalankan isi dalam FragmentTransaction yang di-commit secara otomatis jika selesai tanpa pengecualian.

Unit FragmentManager.commitNow(allowStateLoss: Boolean = false, body: FragmentTransaction.() -> Unit)

Menjalankan isi dalam FragmentTransaction yang di-commit secara otomatis jika selesai tanpa pengecualian.

Unit FragmentManager.transaction(now: Boolean = false, allowStateLoss: Boolean = false, body: FragmentTransaction.() -> Unit)

Menjalankan isi dalam FragmentTransaction yang di-commit secara otomatis jika selesai tanpa pengecualian.

androidx.fragment.app.testing

Dependensi

Groovy

dependencies {
    implementation "androidx.fragment:fragment-testing:1.6.2"
}

Kotlin

dependencies {
    implementation("androidx.fragment:fragment-testing:1.6.2")
}

Fungsi level atas

FragmentScenario<F!> launchFragment(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, factory: FragmentFactory? = null)

Meluncurkan Fragment dengan argumen tertentu yang dihosting oleh FragmentActivity kosong menggunakan FragmentFactory yang ditentukan dan menunggunya mencapai status dilanjutkan.

FragmentScenario<F!> launchFragment(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, crossinline instantiate: () -> F)

Meluncurkan Fragment dengan argumen tertentu yang dihosting oleh FragmentActivity kosong menggunakan instantiate untuk membuat Fragment dan menunggunya mencapai status dilanjutkan.

FragmentScenario<F!> launchFragmentInContainer(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, factory: FragmentFactory? = null)

Meluncurkan Fragment dalam android.R.id.content container tampilan utama Activity, dengan argumen tertentu yang dihosting oleh FragmentActivity kosong dan menunggunya mencapai status dilanjutkan.

FragmentScenario<F!> launchFragmentInContainer(fragmentArgs: Bundle? = null, @StyleRes themeResId: Int = R.style.FragmentScenarioEmptyFragmentActivityTheme, crossinline instantiate: () -> F)

Meluncurkan Fragment dalam android.R.id.content container tampilan utama Activity, dengan argumen tertentu yang dihosting oleh FragmentActivity kosong menggunakan instantiate untuk membuat Fragment dan menunggunya mencapai status dilanjutkan.

androidx.lifecycle

Dependensi

Groovy

dependencies {
    implementation "androidx.lifecycle:lifecycle-livedata-core-ktx:2.6.2"
    implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.6.2"
    implementation "androidx.lifecycle:lifecycle-reactivestreams-ktx:2.6.2"
    implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.6.2"
    implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2"
}

Kotlin

dependencies {
    implementation("androidx.lifecycle:lifecycle-livedata-core-ktx:2.6.2")
    implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.6.2")
    implementation("androidx.lifecycle:lifecycle-reactivestreams-ktx:2.6.2")
    implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.2")
    implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2")
}

Fungsi ekstensi

Untuk kotlinx.coroutines.flow.Flow
LiveData<T> Flow<T>.asLiveData(context: CoroutineContext = EmptyCoroutineContext, timeoutInMs: Long = DEFAULT_TIMEOUT)

Membuat LiveData berisi nilai yang dikumpulkan dari Flow asal.

LiveData<T> Flow<T>.asLiveData(context: CoroutineContext = EmptyCoroutineContext, timeout: Duration)

Membuat LiveData berisi nilai yang dikumpulkan dari Flow asal.

Untuk org.reactivestreams.Publisher
LiveData<T> Publisher<T>.toLiveData()

Membuat aliran LiveData yang dapat diamati dari Publisher ReactiveStreams.

Untuk LiveData
Flow<T> LiveData<T>.asFlow()

Membuat Flow berisi nilai yang dikirim dengan memulai LiveData: awalnya, pengumpul aliran menerima nilai terbaru yang disimpan oleh LiveData, lalu mengamati update LiveData.

LiveData<X> LiveData<X>.distinctUntilChanged()

Membuat objek LiveData baru yang tidak mengeluarkan nilai hingga nilai LiveData this sumber diubah.

LiveData<Y> LiveData<X>.map(crossinline transform: (X) -> Y)

Menampilkan LiveData yang dipetakan dari LiveData this dengan menerapkan transformasi pada setiap kumpulan nilai di LiveData this.

Observer<T> LiveData<T>.observe(owner: LifecycleOwner, crossinline onChanged: (T) -> Unit)

Menambahkan lambda onChanged yang ditentukan sebagai pengamat dalam jangka waktu pemilik yang ditentukan dan menampilkan referensi ke pengamat.

LiveData<Y> LiveData<X>.switchMap(crossinline transform: (X) -> LiveData<Y>)

Menampilkan LiveData yang dipetakan dari input this LiveData dengan menerapkan transformasi pada setiap kumpulan nilai di this.

Publisher<T> LiveData<T>.toPublisher(lifecycle: LifecycleOwner)

Menyesuaikan aliran LiveData yang ditentukan ke Publisher ReactiveStreams.

Untuk ViewModelProvider
VM ViewModelProvider.get()

Menampilkan ViewModel yang ada atau membuat yang baru dalam cakupan (biasanya, fragmen atau aktivitas), yang terkait dengan ViewModelProvider ini.

Untuk LifecycleOwner
suspend T LifecycleOwner.whenCreated(block: suspend CoroutineScope.() -> T)

Menjalankan blok yang ditentukan saat Lifecycle milik LifecycleOwner setidaknya berstatus Lifecycle.State.CREATED.

suspend T LifecycleOwner.whenResumed(block: suspend CoroutineScope.() -> T)

Menjalankan blok yang ditentukan saat Lifecycle milik LifecycleOwner setidaknya berstatus Lifecycle.State.RESUMED.

suspend T LifecycleOwner.whenStarted(block: suspend CoroutineScope.() -> T)

Menjalankan blok yang ditentukan saat Lifecycle milik LifecycleOwner setidaknya berstatus Lifecycle.State.STARTED.

Untuk Lifecycle
suspend T Lifecycle.whenCreated(block: suspend CoroutineScope.() -> T)

Menjalankan blok yang ditentukan saat Lifecycle setidaknya berstatus Lifecycle.State.CREATED.

suspend T Lifecycle.whenResumed(block: suspend CoroutineScope.() -> T)

Menjalankan blok yang ditentukan saat Lifecycle setidaknya berstatus Lifecycle.State.RESUMED.

suspend T Lifecycle.whenStarted(block: suspend CoroutineScope.() -> T)

Menjalankan blok yang ditentukan saat Lifecycle setidaknya berstatus Lifecycle.State.STARTED.

suspend T Lifecycle.whenStateAtLeast(minState: Lifecycle.State, block: suspend CoroutineScope.() -> T)

Menjalankan blok yang ditentukan pada CoroutineDispatcher yang mengeksekusi blok pada thread utama dan menangguhkan eksekusi kecuali Lifecycle setidaknya berstatus minState.

Properti ekstensi

Untuk Lifecycle
LifecycleCoroutineScope Lifecycle.coroutineScope()

CoroutineScope yang terikat ke Lifecycle ini.

Untuk LifecycleOwner
LifecycleCoroutineScope LifecycleOwner.lifecycleScope()

CoroutineScope yang terikat ke Lifecycle milik LifecycleOwner.

Untuk ViewModel
CoroutineScope ViewModel.viewModelScope()

CoroutineScope yang terikat ke ViewModel ini.

Fungsi level atas

LiveData<T> liveData(context: CoroutineContext = EmptyCoroutineContext, timeoutInMs: Long = DEFAULT_TIMEOUT, block: suspend LiveDataScope<T>.() -> Unit)

Membuat LiveData berisi nilai yang dihasilkan dari blok yang ditentukan, dan dieksekusi pada LiveDataScope.

LiveData<T> liveData(context: CoroutineContext = EmptyCoroutineContext, timeout: Duration, block: suspend LiveDataScope<T>.() -> Unit)

Membuat LiveData berisi nilai yang dihasilkan dari blok yang ditentukan, dan dieksekusi pada LiveDataScope.

androidx.navigation

Dependensi

Groovy

dependencies {
    implementation "androidx.navigation:navigation-runtime-ktx:2.7.5"
    implementation "androidx.navigation:navigation-fragment-ktx:2.7.5"
    implementation "androidx.navigation:navigation-ui-ktx:2.7.5"
}

Kotlin

dependencies {
    implementation("androidx.navigation:navigation-runtime-ktx:2.7.5")
    implementation("androidx.navigation:navigation-fragment-ktx:2.7.5")
    implementation("androidx.navigation:navigation-ui-ktx:2.7.5")
}

Fungsi ekstensi

Untuk android.app.Activity
NavController Activity.findNavController(@IdRes viewId: Int)

Menemukan NavController dengan pertimbangan ID View dan Activity yang menampungnya.

NavArgsLazy<Args> Activity.navArgs()

Menampilkan delegasi Lazy untuk mengakses tambahan Activity sebagai instance Arg.

Untuk android.view.View
NavController View.findNavController()

Menemukan NavController yang terkait dengan View.

Untuk NavGraphBuilder
Unit NavGraphBuilder.activity(@IdRes id: Int, builder: ActivityNavigatorDestinationBuilder.() -> Unit)

Membuat ActivityNavigator.Destination baru

Unit NavGraphBuilder.navigation(@IdRes id: Int, @IdRes startDestination: Int, builder: NavGraphBuilder.() -> Unit)

Membuat NavGraph bertingkat

Untuk NavGraph
operator Boolean NavGraph.contains(@IdRes id: Int)

Menampilkan true jika tujuan dengan id ditemukan dalam grafik navigasi ini.

operator NavDestination NavGraph.get(@IdRes id: Int)

Menampilkan tujuan dengan id.

operator Unit NavGraph.minusAssign(node: NavDestination)

Menghapus node dari grafik navigasi ini.

operator Unit NavGraph.plusAssign(node: NavDestination)

Menambahkan tujuan ke NavGraph ini.

operator Unit NavGraph.plusAssign(other: NavGraph)

Menambahkan semua tujuan dari koleksi lain ke koleksi ini.

Untuk NavController
NavGraph NavController.createGraph(@IdRes id: Int = 0, @IdRes startDestination: Int, builder: NavGraphBuilder.() -> Unit)

Membuat NavGraph baru

Untuk NavHost
NavGraph NavHost.createGraph(@IdRes id: Int = 0, @IdRes startDestination: Int, builder: NavGraphBuilder.() -> Unit)

Membuat NavGraph baru

Untuk NavigatorProvider
operator T NavigatorProvider.get(name: String)

Mengambil Navigator terdaftar menggunakan nama.

operator T NavigatorProvider.get(clazz: KClass<T>)

Mengambil Navigator terdaftar menggunakan nama yang diberikan oleh anotasi Navigator.Name.

NavGraph NavigatorProvider.navigation(@IdRes id: Int = 0, @IdRes startDestination: Int, builder: NavGraphBuilder.() -> Unit)

Membuat NavGraph baru

operator Unit NavigatorProvider.plusAssign(navigator: Navigator<out NavDestination>)

Mendaftarkan navigator menggunakan nama yang diberikan oleh anotasi Navigator.Name.

operator Navigator<out NavDestination!>? NavigatorProvider.set(name: String, navigator: Navigator<out NavDestination>)

Mendaftarkan Navigator menggunakan nama.

Untuk Fragment
Lazy<VM> Fragment.navGraphViewModels(@IdRes navGraphId: Int, noinline factoryProducer: () -> ViewModelProvider.Factory = null)

Menampilkan delegasi properti untuk mengakses ViewModel yang dibatasi pada grafik navigasi yang ada dalam data sebelumnya {@link NavController}:

Fungsi level atas

ActivityNavigator.Extras ActivityNavigatorExtras(activityOptions: ActivityOptionsCompat? = null, flags: Int = 0)

Membuat instance ActivityNavigator.Extras baru dengan instance ActivityOptionsCompat tertentu dan/atau flag Intent.FLAG_ACTIVITY_ apa pun.

NavOptions navOptions(optionsBuilder: NavOptionsBuilder.() -> Unit)

Membuat NavOptions baru

androidx.navigation.fragment

Dependensi

Groovy

dependencies {
    implementation "androidx.navigation:navigation-fragment-ktx:2.7.5"
}

Kotlin

dependencies {
    implementation("androidx.navigation:navigation-fragment-ktx:2.7.5")
}

Fungsi ekstensi

Untuk NavGraphBuilder
Unit NavGraphBuilder.dialog(@IdRes id: Int)

Membuat DialogFragmentNavigator.Destination baru

Unit NavGraphBuilder.dialog(@IdRes id: Int, builder: DialogFragmentNavigatorDestinationBuilder.() -> Unit)

Membuat DialogFragmentNavigator.Destination baru

Unit NavGraphBuilder.fragment(@IdRes id: Int)

Membuat FragmentNavigator.Destination baru

Unit NavGraphBuilder.fragment(@IdRes id: Int, builder: FragmentNavigatorDestinationBuilder.() -> Unit)

Membuat FragmentNavigator.Destination baru

Untuk Fragment
NavController Fragment.findNavController()

Menemukan NavController yang diberi Fragment

NavArgsLazy<Args> Fragment.navArgs()

Menampilkan delegasi Lazy untuk mengakses argumen Fragment sebagai instance Arg.

Fungsi level atas

FragmentNavigator.Extras FragmentNavigatorExtras(vararg sharedElements: Pair<View, String>)

Membuat instance FragmentNavigator.Extras baru dengan elemen bersama yang ditentukan

androidx.navigation.ui

Dependensi

Groovy

dependencies {
    implementation "androidx.navigation:navigation-ui-ktx:2.7.5"
}

Kotlin

dependencies {
    implementation("androidx.navigation:navigation-ui-ktx:2.7.5")
}

Fungsi ekstensi

Untuk android.view.MenuItem
Boolean MenuItem.onNavDestinationSelected(navController: NavController)

Mencoba menavigasi ke NavDestination yang terkait denganMenuItem ini.

Untuk androidx.appcompat.app.AppCompatActivity
Unit AppCompatActivity.setupActionBarWithNavController(navController: NavController, drawerLayout: DrawerLayout?)

Menyiapkan ActionBar yang ditampilkan oleh AppCompatActivity.getSupportActionBar untuk digunakan dengan NavController.

Unit AppCompatActivity.setupActionBarWithNavController(navController: NavController, configuration: AppBarConfiguration = AppBarConfiguration(navController.graph))

Menyiapkan ActionBar yang ditampilkan oleh AppCompatActivity.getSupportActionBar untuk digunakan dengan NavController.

Untuk androidx.appcompat.widget.Toolbar
Unit Toolbar.setupWithNavController(navController: NavController, drawerLayout: DrawerLayout?)

Menyiapkan Toolbar untuk digunakan dengan NavController.

Unit Toolbar.setupWithNavController(navController: NavController, configuration: AppBarConfiguration = AppBarConfiguration(navController.graph))

Menyiapkan Toolbar untuk digunakan dengan NavController.

Untuk com.google.android.material.appbar.CollapsingToolbarLayout
Unit CollapsingToolbarLayout.setupWithNavController(toolbar: Toolbar, navController: NavController, drawerLayout: DrawerLayout?)

Menyiapkan CollapsingToolbarLayout dan Toolbar untuk digunakan dengan NavController.

Unit CollapsingToolbarLayout.setupWithNavController(toolbar: Toolbar, navController: NavController, configuration: AppBarConfiguration = AppBarConfiguration(navController.graph))

Menyiapkan CollapsingToolbarLayout dan Toolbar untuk digunakan dengan NavController.

Untuk com.google.android.material.bottomnavigation.BottomNavigationView
Unit BottomNavigationView.setupWithNavController(navController: NavController)

Menyiapkan BottomNavigationView untuk digunakan dengan NavController.

Untuk com.google.android.material.navigation.NavigationView
Unit NavigationView.setupWithNavController(navController: NavController)

Menyiapkan NavigationView untuk digunakan dengan NavController.

Untuk NavController
Boolean NavController.navigateUp(drawerLayout: DrawerLayout?)

Menangani tombol Up dengan mendelegasikan perilakunya ke NavController yang ditentukan.

Boolean NavController.navigateUp(appBarConfiguration: AppBarConfiguration)

Menangani tombol Up dengan mendelegasikan perilakunya ke NavController yang ditentukan.

Fungsi level atas

AppBarConfiguration AppBarConfiguration(navGraph: NavGraph, drawerLayout: DrawerLayout? = null, noinline fallbackOnNavigateUpListener: () -> Boolean = { false })

Opsi konfigurasi untuk metode NavigationUI yang berinteraksi dengan implementasi pola panel aplikasi seperti android.support.v7.widget.Toolbar, android.support.design.widget.CollapsingToolbarLayout, dan android.support.v7.app.ActionBar.

AppBarConfiguration AppBarConfiguration(topLevelMenu: Menu, drawerLayout: DrawerLayout? = null, noinline fallbackOnNavigateUpListener: () -> Boolean = { false })

Opsi konfigurasi untuk metode NavigationUI yang berinteraksi dengan implementasi pola panel aplikasi seperti android.support.v7.widget.Toolbar, android.support.design.widget.CollapsingToolbarLayout, dan android.support.v7.app.ActionBar.

AppBarConfiguration AppBarConfiguration(topLevelDestinationIds: Set<Int>, drawerLayout: DrawerLayout? = null, noinline fallbackOnNavigateUpListener: () -> Boolean = { false })

Opsi konfigurasi untuk metode NavigationUI yang berinteraksi dengan implementasi pola panel aplikasi seperti android.support.v7.widget.Toolbar, android.support.design.widget.CollapsingToolbarLayout, dan android.support.v7.app.ActionBar.

androidx.paging

Dependensi

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")
}

Fungsi ekstensi

Untuk 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)

Membuat Flowable<PagedList>, dari DataSource.Factory ini, yang mempermudah penggunaan RxPagedListBuilder.

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)

Membuat Flowable<PagedList>, dari DataSource.Factory ini, yang mempermudah penggunaan RxPagedListBuilder.

LiveData<PagedList<Value>> DataSource.Factory<Key, Value>.toLiveData(config: PagedList.Config, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchExecutor: Executor = ArchTaskExecutor.getIOThreadExecutor())

Membuat LiveData<PagedList>, dari DataSource.Factory ini, yang mempermudah penggunaan LivePagedListBuilder.

LiveData<PagedList<Value>> DataSource.Factory<Key, Value>.toLiveData(pageSize: Int, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchExecutor: Executor = ArchTaskExecutor.getIOThreadExecutor())

Membuat LiveData<PagedList>, dari DataSource.Factory ini, yang mempermudah penggunaan LivePagedListBuilder.

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)

Membuat Observable<PagedList> dari DataSource.Factory ini, yang mempermudah penggunaan RxPagedListBuilder.

Observable<PagedList<Value>> DataSource.Factory<Key, Value>.toObservable(pageSize: Int, initialLoadKey: Key? = null, boundaryCallback: PagedList.BoundaryCallback<Value>? = null, fetchScheduler: Scheduler? = null, notifyScheduler: Scheduler? = null)

Membuat Observable<PagedList> dari DataSource.Factory ini, yang mempermudah penggunaan RxPagedListBuilder.

Fungsi level atas

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)

Membuat PagedList.Config, yang mempermudah penggunaan 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)

Membuat PagedList, yang mempermudah penggunaan PagedList.Builder.

androidx.palette.graphics

Dependensi

Groovy

dependencies {
    implementation "androidx.palette:palette-ktx:1.0.0"
}

Kotlin

dependencies {
    implementation("androidx.palette:palette-ktx:1.0.0")
}

Fungsi ekstensi

Untuk Palette
operator Palette.Swatch? Palette.get(target: Target)

Menampilkan pilihan yang dipilih untuk target yang ditentukan dari palet, atau null jika tidak ditemukan.

androidx.preference

Dependensi

Groovy

dependencies {
    implementation "androidx.preference:preference-ktx:1.2.1"
}

Kotlin

dependencies {
    implementation("androidx.preference:preference-ktx:1.2.1")
}

Fungsi ekstensi

Untuk PreferenceGroup
operator Boolean PreferenceGroup.contains(preference: Preference)

Menampilkan true jika preference ditemukan dalam grup preferensi ini.

Unit PreferenceGroup.forEach(action: (preference: Preference) -> Unit)

Melakukan tindakan yang ditentukan pada setiap preferensi dalam grup preferensi ini.

Unit PreferenceGroup.forEachIndexed(action: (index: Int, preference: Preference) -> Unit)

Melakukan tindakan yang ditentukan pada setiap preferensi dalam grup preferensi ini, dengan menyediakan indeks berurutannya.

operator T? PreferenceGroup.get(key: CharSequence)

Menampilkan preferensi dengan key, atau null jika tidak ditemukan preferensi dengan key.

operator Preference PreferenceGroup.get(index: Int)

Menampilkan preferensi pada index.

Boolean PreferenceGroup.isEmpty()

Menampilkan true jika grup preferensi ini tidak berisi preferensi.

Boolean PreferenceGroup.isNotEmpty()

Menampilkan true jika grup preferensi ini berisi satu atau lebih preferensi.

operator MutableIterator<Preference> PreferenceGroup.iterator()

Mengembalikan MutableIterator ke preferensi dalam grup preferensi ini.

operator Unit PreferenceGroup.minusAssign(preference: Preference)

Menghapus preference dari grup preferensi ini.

operator Unit PreferenceGroup.plusAssign(preference: Preference)

Menambahkan preference ke grup preferensi ini.

Properti ekstensi

Untuk PreferenceGroup
Sequence<Preference> PreferenceGroup.children()

Mengembalikan Sequence ke preferensi dalam grup preferensi ini.

Int PreferenceGroup.size()

Menampilkan jumlah preferensi dalam grup preferensi ini.

androidx.room

Dependensi

Groovy

dependencies {
    implementation "androidx.room:room-ktx:2.6.1"
}

Kotlin

dependencies {
    implementation("androidx.room:room-ktx:2.6.1")
}

Fungsi ekstensi

Untuk RoomDatabase
suspend R RoomDatabase.withTransaction(block: suspend () -> R)

Memanggil blok penangguhan yang ditetapkan dalam transaksi database.

androidx.slice.builders

Dependensi

Groovy

dependencies {
    implementation "androidx.slice:slice-builders-ktx:1.0.0-alpha08"
}

Kotlin

dependencies {
    implementation("androidx.slice:slice-builders-ktx:1.0.0-alpha08")
}

Fungsi ekstensi

Untuk GridRowBuilderDsl
GridRowBuilder GridRowBuilderDsl.cell(buildCell: CellBuilderDsl.() -> Unit)

GridRowBuilder GridRowBuilderDsl.seeMoreCell(buildCell: CellBuilderDsl.() -> Unit)

Untuk 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)

Fungsi level atas

Slice list(context: Context, uri: Uri, ttl: Long, addRows: ListBuilderDsl.() -> Unit)

Mengurangi panjang yang diperlukan untuk membuat Slice di Kotlin.

SliceAction tapSliceAction(pendingIntent: PendingIntent, icon: IconCompat, imageMode: Int = ICON_IMAGE, title: CharSequence)

Metode setelan pabrik untuk membuat SliceAction yang dapat diketuk.

SliceAction toggleSliceAction(pendingIntent: PendingIntent, icon: IconCompat? = null, title: CharSequence, isChecked: Boolean)

Metode setelan pabrik untuk membuat SliceAction yang dapat diubah.

androidx.sqlite.db

Dependensi

Groovy

dependencies {
    implementation "androidx.sqlite:sqlite-ktx:2.4.0"
}

Kotlin

dependencies {
    implementation("androidx.sqlite:sqlite-ktx:2.4.0")
}

Fungsi ekstensi

Untuk SupportSQLiteDatabase
T SupportSQLiteDatabase.transaction(exclusive: Boolean = true, body: SupportSQLiteDatabase.() -> T)

Menjalankan isi dalam transaksi yang menandainya sebagai berhasil jika selesai tanpa pengecualian.

androidx.work

Dependensi

Fungsi ekstensi

Untuk com.google.common.util.concurrent.ListenableFuture
suspend R ListenableFuture<R>.await()

Menunggu penyelesaian ListenableFuture tanpa memblokir thread.

Untuk Operation
suspend Operation.State.SUCCESS! Operation.await()

Menunggu Operation tanpa memblokir thread.

Untuk Data
Boolean Data.hasKeyWithValueOfType(key: String)

Menampilkan true jika instance Data memiliki nilai yang sesuai dengan kunci tertentu dengan jenis T yang diharapkan.

Untuk Builder
OneTimeWorkRequest.Builder OneTimeWorkRequest.Builder.setInputMerger(@NonNull inputMerger: KClass<out InputMerger>)

Menetapkan InputMerger pada OneTimeWorkRequest.Builder.

Fungsi level atas

OneTimeWorkRequest.Builder OneTimeWorkRequestBuilder()

Membuat OneTimeWorkRequest dengan ListenableWorker yang ditentukan.

PeriodicWorkRequest.Builder PeriodicWorkRequestBuilder(repeatInterval: Long, repeatIntervalTimeUnit: TimeUnit)

Membuat PeriodicWorkRequest.Builder dengan ListenableWorker yang ditentukan.

PeriodicWorkRequest.Builder PeriodicWorkRequestBuilder(repeatInterval: Duration)

Membuat PeriodicWorkRequest.Builder dengan ListenableWorker yang ditentukan.

PeriodicWorkRequest.Builder PeriodicWorkRequestBuilder(repeatInterval: Long, repeatIntervalTimeUnit: TimeUnit, flexTimeInterval: Long, flexTimeIntervalUnit: TimeUnit)

Membuat PeriodicWorkRequest.Builder dengan ListenableWorker yang ditentukan.

PeriodicWorkRequest.Builder PeriodicWorkRequestBuilder(repeatInterval: Duration, flexTimeInterval: Duration)

Membuat PeriodicWorkRequest.Builder dengan ListenableWorker yang ditentukan.

Data workDataOf(vararg pairs: Pair<String, Any?>)

Mengonversi daftar pasangan menjadi objek Data.

androidx.work.testing

Dependensi

Groovy

dependencies {
    implementation "androidx.work:work-testing:2.9.0"
}

Kotlin

dependencies {
    implementation("androidx.work:work-testing:2.9.0")
}

Fungsi level atas

TestListenableWorkerBuilder<W> TestListenableWorkerBuilder(context: Context, inputData: Data = Data.EMPTY, tags: List<String> = emptyList(), runAttemptCount: Int = 1, triggeredContentUris: List<Uri> = emptyList(), triggeredContentAuthorities: List<String> = emptyList())

Membuat instance 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())

Membuat instance TestWorkerBuilder.

com.google.android.play.core.ktx

Dependensi

Groovy

dependencies {
    implementation "com.google.android.play:core-ktx:1.8.1"
}

Kotlin

dependencies {
    implementation("com.google.android.play:core-ktx:1.8.1")
}

Fungsi ekstensi

Untuk com.google.android.play.core.appupdate.AppUpdateManager
suspend AppUpdateInfo AppUpdateManager.requestAppUpdateInfo()

Meminta ketersediaan update untuk aplikasi saat ini

suspend Unit AppUpdateManager.requestCompleteUpdate()

Untuk alur update yang fleksibel, akan memicu penyelesaian update.

Flow<AppUpdateResult> AppUpdateManager.requestUpdateFlow()

Titik masuk untuk memantau ketersediaan dan progres update.

Boolean AppUpdateManager.startUpdateFlowForResult(appUpdateInfo: AppUpdateInfo, appUpdateType: Int, fragment: Fragment, requestCode: Int)

Versi AppUpdateManager.startUpdateFlowForResult yang menerima Fragment AndroidX untuk menampilkan hasil.

Untuk com.google.android.play.core.splitinstall.SplitInstallManager
suspend Unit SplitInstallManager.requestCancelInstall(sessionId: Int)

Menangguhkan versi SplitInstallManager.cancelInstall

suspend Unit SplitInstallManager.requestDeferredInstall(moduleNames: List<String>)

Menangguhkan versi SplitInstallManager.deferredInstall

suspend Unit SplitInstallManager.requestDeferredLanguageInstall(languages: List<Locale>)

Menangguhkan versi SplitInstallManager.deferredLanguageInstall

suspend Unit SplitInstallManager.requestDeferredLanguageUninstall(languages: List<Locale>)

Menangguhkan versi SplitInstallManager.deferredLanguageUninstall

suspend Unit SplitInstallManager.requestDeferredUninstall(moduleNames: List<String>)

Menangguhkan versi SplitInstallManager.deferredUninstall

suspend Int SplitInstallManager.requestInstall(modules: List<String> = listOf(), languages: List<String> = listOf())

Memulai penginstalan modul/bahasa yang diminta.

Flow<SplitInstallSessionState> SplitInstallManager.requestProgressFlow()

Membuat dan menampilkan Flow yang di-buffer, yang akan memberikan semua peristiwa progres untuk penginstalan terpisah yang sedang berlangsung.

suspend SplitInstallSessionState SplitInstallManager.requestSessionState(sessionId: Int)

Menangguhkan versi SplitInstallManager.getSessionState

suspend List<SplitInstallSessionState> SplitInstallManager.requestSessionStates()

Menangguhkan versi SplitInstallManager.getSessionStates

Boolean SplitInstallManager.startConfirmationDialogForResult(sessionState: SplitInstallSessionState, fragment: Fragment, requestCode: Int)

Versi SplitInstallManager.startConfirmationDialogForResult yang menerima Fragment AndroidX untuk menampilkan hasil.

Properti ekstensi

Untuk com.google.android.play.core.appupdate.AppUpdateInfo
Int AppUpdateInfo.installStatus()

Menampilkan status progres update.

Boolean AppUpdateInfo.isFlexibleUpdateAllowed()

Menampilkan true jika update fleksibel diizinkan.

Boolean AppUpdateInfo.isImmediateUpdateAllowed()

Menampilkan true jika update langsung diizinkan.

Untuk com.google.android.play.core.install.InstallState
Boolean InstallState.hasTerminalStatus()

Menunjukkan bahwa ini adalah status akhir (tidak akan ada update lagi) dan harus ditangani sebagaimana mestinya (keberhasilan, pembatalan, atau kegagalan).

Int InstallState.installErrorCode()

Menampilkan kode error untuk suatu penginstalan, atau {@link InstallErrorCode#NO_ERROR}.

Int InstallState.installStatus()

Menampilkan status penginstalan.

String! InstallState.packageName()

Menampilkan nama paket untuk aplikasi yang sedang diinstal.

Untuk com.google.android.play.core.splitinstall.SplitInstallSessionState
Long SplitInstallSessionState.bytesDownloaded()

Byte yang didownload oleh update ini.

Int SplitInstallSessionState.errorCode()

Kode error update ini.

Boolean SplitInstallSessionState.hasTerminalStatus()

Menunjukkan bahwa update ini adalah yang terakhir, yang berarti tidak akan ada lagi update untuk sesi ini.

List<String> SplitInstallSessionState.languages()

Bahasa yang disertakan oleh update ini.

List<String> SplitInstallSessionState.moduleNames()

Modul yang disertakan oleh update ini.

Int SplitInstallSessionState.sessionId()

ID sesi update ini.

Int SplitInstallSessionState.status()

Kode status update ini.

Long SplitInstallSessionState.totalBytesToDownload()

Total byte yang akan didownload melalui update ini.

Fungsi level atas

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 = {})

Fungsi yang memudahkan pembuatan SplitInstallStateUpdatedListener.