Lista rozszerzeń KTX

androidx.activity

Zależność

Odlotowe

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

Kotlin

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

Funkcje rozszerzeń

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

Utwórz i dodaj nowe wywołanie zwrotne OnBackPressedCallback, które wywołuje onBackPressed w OnBackPressedCallback.handleOnBackPressed.

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

Zwraca delegata Lazy, aby uzyskać dostęp do modelu ViewModel klasy ComponentActivity. Jeśli określono factoryProducer, zwracany przez niego obiekt ViewModelProvider.Factory zostanie użyty do utworzenia modelu ViewModel po raz pierwszy.

androidx.benchmark

Zależność

Groovy

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

Kotlin

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

Funkcje najwyższego poziomu

Jednostka beginTraceSection(sectionName: String)

Jednostka endTraceSection()

androidx.benchmark.junit4

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku BenchmarkRule:
Jednostka BenchmarkRule.measureRepeated(crossinline block: BenchmarkRule.Scope.() -> Unit)

Przeprowadź test porównawczy bloku kodu.

androidx.collection

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Zwraca wartość „true”, jeśli kolekcja zawiera key.

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

Wykonuje podane działanie dla każdej pary klucz-wartość.

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

Zwraca wartość odpowiadającą kluczowi lub wartość domyślną, jeśli klucz nie istnieje.

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

Zwraca wartość odpowiadającą kluczowi lub z defaultValue, jeśli nie jest obecna.

Wartość logiczna LongSparseArray<T>.isNotEmpty()

Zwraca wartość „true”, gdy kolekcja zawiera elementy.

LongIterator LongSparseArray<T>.keyIterator()

Zwraca iterator po kluczach kolekcji.

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

Tworzy nową kolekcję, dodając lub zastępując wpisy z innej.

Wartość logiczna LongSparseArray<T>.remove(key: Long, value: T)

Usuwa wpis dla klucza tylko wtedy, gdy jest on zmapowany na wartość.

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

Umożliwia używanie operatora indeksu do przechowywania wartości w kolekcji.

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

Zwraca iterator po wartościach kolekcji.

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

Zwraca wartość „true”, jeśli kolekcja zawiera key.

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

Wykonuje podane działanie dla każdej pary klucz-wartość.

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

Zwraca wartość odpowiadającą kluczowi lub wartość domyślną, jeśli klucz nie istnieje.

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

Zwraca wartość odpowiadającą kluczowi lub z defaultValue, jeśli nie jest obecna.

Wartość logiczna SparseArrayCompat<T>.isNotEmpty()

Zwraca wartość „true”, gdy kolekcja zawiera elementy.

IntIterator SparseArrayCompat<T>.keyIterator()

Zwraca iterator po kluczach kolekcji.

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

Tworzy nową kolekcję, dodając lub zastępując wpisy z innej.

Wartość logiczna SparseArrayCompat<T>.remove(key: Int, value: T)

Usuwa wpis dla klucza tylko wtedy, gdy jest on zmapowany na wartość.

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

Umożliwia używanie operatora indeksu do przechowywania wartości w kolekcji.

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

Zwraca iterator po wartościach kolekcji.

Właściwości rozszerzenia

LongSparseArray
Int LongSparseArray<T>.size()

Zwraca liczbę par klucz-wartość w kolekcji.

W przypadku SparseArrayCompat:
Int SparseArrayCompat<T>.size()

Zwraca liczbę par klucz-wartość w kolekcji.

Funkcje najwyższego poziomu

ArrayMap<K, V> arrayMapOf()

Zwraca nową, pustą tablicę ArrayMap.

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

Zwraca nową mapę ArrayMap z określoną zawartością podaną jako lista par, w których pierwszy komponent jest kluczem, a drugi wartością.

ArraySet<T> arraySetOf()

Zwraca nowy pusty obiekt ArraySet.

ArraySet<T> arraySetOf(vararg values: T)

Zwraca nowy obiekt ArraySet z określoną zawartością.

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

Tworzy LruCache z podanymi parametrami.

androidx.core.animation

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Dodaj detektor do tego obiektu Animator, korzystając z dostępnych działań.

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

Dodaj do tego obiektu Animator detektor wstrzymywania i wznawiania, używając podanych działań.

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

Dodaj działanie, które zostanie wywołane po anulowaniu animacji.

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

Dodaj działanie, które zostanie wywołane po zakończeniu animacji.

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

Dodaj działanie, które zostanie wywołane po wstrzymaniu animacji.

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

Dodaj działanie, które zostanie wywołane po powtórzeniu animacji.

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

Dodaj działanie, które zostanie wywołane po wznowieniu animacji po wstrzymaniu.

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

Dodaj działanie, które zostanie wywołane po rozpoczęciu animacji.

androidx.core.content

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku android.content.Context
T? Context.getSystemService()

Zwróć uchwyt do usługi na poziomie systemu według klasy.

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

Wykonuje block na odbiorniku TypedArray.

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

Wykonuje block na odbiorniku TypedArray.

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

Umożliwia edytowanie tej instancji preferencji za pomocą wywołania apply lub commit w celu zachowania zmian.

Funkcje najwyższego poziomu

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

Zwraca nowy obiekt ContentValues z podanymi parami klucz-wartość jako elementami.

androidx.core.content.res

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku android.content.res.TypedArray:
Wartość logiczna TypedArray.getBooleanOrThrow(@StyleableRes index: Int)

Pobiera wartość logiczną atrybutu o podanym indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest on zdefiniowany.

Int TypedArray.getColorOrThrow(@StyleableRes index: Int)

Pobiera wartość koloru dla atrybutu o indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

ColorStateList TypedArray.getColorStateListOrThrow(@StyleableRes index: Int)

Pobierz wartość listy stanów kolorów dla atrybutu w indeksie lub zgłoś błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

Float TypedArray.getDimensionOrThrow(@StyleableRes index: Int)

Pobiera wartość wymiaru dla atrybutu w indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

Int TypedArray.getDimensionPixelOffsetOrThrow(@StyleableRes index: Int)

Pobiera wartość przesunięcia pikseli wymiaru dla atrybutu w indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

Int TypedArray.getDimensionPixelSizeOrThrow(@StyleableRes index: Int)

Pobiera wartość rozmiaru piksela wymiaru dla atrybutu w indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

Drawable TypedArray.getDrawableOrThrow(@StyleableRes index: Int)

Pobierz wartość elementu rysowalnego dla atrybutu w indeksie lub zgłoś wyjątek IllegalArgumentException, jeśli nie jest zdefiniowany.

Float TypedArray.getFloatOrThrow(@StyleableRes index: Int)

Pobiera wartość zmiennoprzecinkową atrybutu o indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowana.

Krój pisma TypedArray.getFontOrThrow(@StyleableRes index: Int)

Pobiera wartość czcionki dla atrybutu o indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowana.

Int TypedArray.getIntOrThrow(@StyleableRes index: Int)

Pobiera wartość całkowitą atrybutu w indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

Int TypedArray.getIntegerOrThrow(@StyleableRes index: Int)

Pobiera wartość całkowitą atrybutu w indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

Int TypedArray.getResourceIdOrThrow(@StyleableRes index: Int)

Pobiera identyfikator zasobu dla atrybutu w indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

String TypedArray.getStringOrThrow(@StyleableRes index: Int)

Pobiera wartość ciągu znaków dla atrybutu w indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

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

Pobiera wartość tablicy tekstowej dla atrybutu w indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

CharSequence TypedArray.getTextOrThrow(@StyleableRes index: Int)

Pobiera wartość tekstową atrybutu w indeksie lub zgłasza błąd IllegalArgumentException, jeśli nie jest zdefiniowany.

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

Wykonuje podaną funkcję block na tym obiekcie TypedArray, a następnie go odzyskuje.

androidx.core.database

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Zwraca wartość żądanej kolumny jako tablicę bajtów, która może mieć wartość null.

Double? Cursor.getDoubleOrNull(index: Int)

Zwraca wartość żądanej kolumny jako liczbę zmiennoprzecinkową podwójnej precyzji, która może być pusta.

Float? Cursor.getFloatOrNull(index: Int)

Zwraca wartość żądanej kolumny jako liczbę zmiennoprzecinkową, która może być pusta.

Int? Cursor.getIntOrNull(index: Int)

Zwraca wartość żądanej kolumny jako liczbę całkowitą, która może być pusta.

Long? Cursor.getLongOrNull(index: Int)

Zwraca wartość żądanej kolumny jako wartość typu long, która może być pusta.

Short? Cursor.getShortOrNull(index: Int)

Zwraca wartość żądanej kolumny jako wartość typu short, która może być pusta.

String? Cursor.getStringOrNull(index: Int)

Zwraca wartość żądanej kolumny jako ciąg tekstowy, który może mieć wartość null.

androidx.core.database.sqlite

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Uruchom body w transakcji, oznaczając ją jako udaną, jeśli zakończy się bez wyjątku.

androidx.core.graphics

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku android.graphics.Bitmap:
Bitmapa Bitmap.applyCanvas(block: Canvas.() -> Unit)

Tworzy nowy obszar roboczy do rysowania na tej bitmapie i wykonuje określony blok na nowo utworzonym obszarze roboczym.

operator Boolean Bitmap.contains(p: Point)

Zwraca wartość „prawda”, jeśli określony punkt znajduje się wewnątrz bitmapy.

operator Boolean Bitmap.contains(p: PointF)

Zwraca wartość „prawda”, jeśli określony punkt znajduje się wewnątrz bitmapy.

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

Zwraca wartość piksela w określonej lokalizacji.

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

Tworzy nową bitmapę, przeskalowaną z tej bitmapy, jeśli to możliwe.

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

Zapisuje określoną liczbę całkowitą koloru w bitmapie (zakładając, że jest ona modyfikowalna) we współrzędnej (x, y).

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

Zawiń określony blok w wywołaniach Canvas.save/Canvas.clipRect i Canvas.restoreToCount.

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

Zawiń określony blok w wywołaniach Canvas.save/Canvas.clipRect i Canvas.restoreToCount.

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

Zawiń określony blok w wywołaniach Canvas.save/Canvas.clipRect i Canvas.restoreToCount.

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

Zawiń określony blok w wywołaniach Canvas.save/Canvas.clipRect i Canvas.restoreToCount.

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

Zawiń określony blok w wywołania Canvas.save/Canvas.clipPath i Canvas.restoreToCount.

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

Zawiń określony blok w wywołaniach Canvas.save/Canvas.concat i Canvas.restoreToCount.

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

Zawiń określony blok w wywołaniach Canvas.save/Canvas.rotate i Canvas.restoreToCount.

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

Opakuj określony blok w wywołania Canvas.save i Canvas.restoreToCount.

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

Umieść określony blok w wywołaniach Canvas.save/Canvas.scale i Canvas.restoreToCount.

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

Zawiń określony blok w wywołaniach Canvas.save/Canvas.skew i Canvas.restoreToCount.

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

Zawiń określony blok w wywołaniach Canvas.save/Canvas.translate i Canvas.restoreToCount.

W przypadku android.graphics.Color:
operator Float Color.component1()

Zwraca pierwszy komponent koloru.

operator Float Color.component2()

Zwraca drugi składnik koloru.

operator Float Color.component3()

Zwraca trzeci składnik koloru.

operator Float Color.component4()

Zwraca czwarty komponent koloru.

infix Color! Color.convertTo(colorSpace: Named)

Konwertuje odbiornik koloru na kolor w określonej przestrzeni barw.

infix Color! Color.convertTo(colorSpace: ColorSpace)

Konwertuje odbiornik koloru na kolor w określonej przestrzeni barw.

operator Color Color.plus(c: Color)

Łączy 2 półprzezroczyste kolory.

W przypadku android.graphics.ImageDecoder.Source
Bitmapa Source.decodeBitmap(crossinline action: ImageDecoder.(info: ImageInfo, source: Source) -> Unit)

Tworzenie bitmapy ze źródła

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

Tworzenie obiektu Drawable ze źródła

W przypadku android.graphics.Matrix:
operator Matrix Matrix.times(m: Matrix)

Mnoży ten obiekt Matrix przez inną macierz i zwraca wynik jako nową macierz.

FloatArray Matrix.values()

Zwraca 9 wartości tego obiektu Matrix jako nową tablicę liczb zmiennoprzecinkowych.

W przypadku android.graphics.Paint:
Wartość logiczna Paint.setBlendMode(blendModeCompat: BlendModeCompat?)

Wygodna metoda konfigurowania trybu BlendMode obiektu Paint w sposób zgodny wstecznie.

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

Zwraca część wspólną 2 ścieżek jako nową ścieżkę.

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

Spłaszcza (lub przybliża) ścieżkę za pomocą serii segmentów linii.

operator Path Path.minus(p: Path)

Zwraca różnicę między 2 ścieżkami jako nową ścieżkę.

infix Path Path.or(p: Path)

Zwraca sumę 2 ścieżek jako nową ścieżkę.

operator Path Path.plus(p: Path)

Zwraca sumę 2 ścieżek jako nową ścieżkę.

infix Path Path.xor(p: Path)

Zwraca sumę zbiorów minus część wspólna 2 ścieżek jako nową ścieżkę.

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

Tworzy nowy obiekt Canvas, aby rejestrować polecenia w tym obiekcie Picture, wykonuje określony blok na nowo utworzonym obiekcie Canvas i zwraca ten obiekt Picture.

W przypadku android.graphics.Point:
operator Int Point.component1()

Zwraca współrzędną x tego punktu.

operator Int Point.component2()

Zwraca współrzędną y tego punktu.

operator Point Point.minus(p: Point)

Przesuwa ten punkt o negację określonego punktu i zwraca wynik jako nowy punkt.

operator Point Point.minus(xy: Int)

Przesuwa ten punkt o negację określonej wartości na osiach X i Y oraz zwraca wynik jako nowy punkt.

operator Point Point.plus(p: Point)

Przesuwa ten punkt o określony punkt i zwraca wynik jako nowy punkt.

operator Point Point.plus(xy: Int)

Przesuwa ten punkt o określoną wartość na osiach X i Y i zwraca wynik jako nowy punkt.

PointF Point.toPointF()

Zwraca reprezentację PointF tego punktu.

operator Point Point.unaryMinus()

Zwraca nowy punkt reprezentujący negację tego punktu.

W przypadku android.graphics.PointF:
operator Float PointF.component1()

Zwraca współrzędną x tego punktu.

operator Float PointF.component2()

Zwraca współrzędną y tego punktu.

operator PointF PointF.minus(p: PointF)

Przesuwa ten punkt o negację określonego punktu i zwraca wynik jako nowy punkt.

operator PointF PointF.minus(xy: Float)

Przesuwa ten punkt o negację określonej wartości na osiach X i Y oraz zwraca wynik jako nowy punkt.

operator PointF PointF.plus(p: PointF)

Przesuwa ten punkt o określony punkt i zwraca wynik jako nowy punkt.

operator PointF PointF.plus(xy: Float)

Przesuwa ten punkt o określoną wartość na osiach X i Y i zwraca wynik jako nowy punkt.

Punkt PointF.toPoint()

Zwraca reprezentację Point tego punktu.

operator PointF PointF.unaryMinus()

Zwraca nowy punkt reprezentujący negację tego punktu.

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

Tworzy nowy filtr PorterDuffColorFilter, który używa tego trybu PorterDuff.Mode jako trybu kompozycji alfa lub trybu mieszania oraz określonego koloru.

PorterDuffXfermode Mode.toXfermode()

Tworzy nowy obiekt PorterDuffXfermode, który używa tego obiektu PorterDuff.Mode jako trybu kompozycji alfa lub trybu mieszania.

W przypadku android.graphics.Rect:
infix Rect Rect.and(r: Rect)

Zwraca część wspólną 2 prostokątów jako nowy prostokąt.

operator Int Rect.component1()

Zwraca „left”, czyli pierwszy komponent prostokąta.

operator Int Rect.component2()

Zwraca „top”, czyli drugi komponent prostokąta.

operator Int Rect.component3()

Zwraca „right”, czyli trzeci komponent prostokąta.

operator Int Rect.component4()

Zwraca „bottom”, czyli czwarty komponent prostokąta.

operator Boolean Rect.contains(p: Point)

Zwraca wartość „true”, jeśli określony punkt znajduje się wewnątrz prostokąta.

operator Region Rect.minus(r: Rect)

Zwraca różnicę między tym prostokątem a określonym prostokątem jako nowy region.

operator Rect Rect.minus(xy: Int)

Zwraca nowy prostokąt reprezentujący ten prostokąt przesunięty o negację określonej wartości na osiach X i Y.

operator Rect Rect.minus(xy: Point)

Zwraca nowy prostokąt reprezentujący ten prostokąt przesunięty o negację określonego punktu.

infix Rect Rect.or(r: Rect)

Zwraca sumę 2 prostokątów jako nowy prostokąt.

operator Rect Rect.plus(r: Rect)

Wykonuje sumę tego prostokąta i określonego prostokąta i zwraca wynik jako nowy prostokąt.

operator Rect Rect.plus(xy: Int)

Zwraca nowy prostokąt reprezentujący ten prostokąt przesunięty o określoną wartość na osiach X i Y.

operator Rect Rect.plus(xy: Point)

Zwraca nowy prostokąt reprezentujący ten prostokąt przesunięty o określony punkt.

operator Rect Rect.times(factor: Int)

Zwraca nowy prostokąt, którego komponenty są przeskalowane o współczynnik.

RectF Rect.toRectF()

Zwraca reprezentację RectF tego prostokąta.

Region Rect.toRegion()

Zwraca reprezentację Region tego prostokąta.

infix Region Rect.xor(r: Rect)

Zwraca sumę zbiorów minus część wspólna 2 prostokątów jako nowy region.

W przypadku android.graphics.RectF:
infix RectF RectF.and(r: RectF)

Zwraca część wspólną 2 prostokątów jako nowy prostokąt.

operator Float RectF.component1()

Zwraca „left”, czyli pierwszy komponent prostokąta.

operator Float RectF.component2()

Zwraca „top”, czyli drugi komponent prostokąta.

operator Float RectF.component3()

Zwraca „right”, czyli trzeci komponent prostokąta.

operator Float RectF.component4()

Zwraca „bottom”, czyli czwarty komponent prostokąta.

operator Boolean RectF.contains(p: PointF)

Zwraca wartość „true”, jeśli określony punkt znajduje się wewnątrz prostokąta.

operator Region RectF.minus(r: RectF)

Zwraca różnicę między tym prostokątem a określonym prostokątem jako nowy region.

operator RectF RectF.minus(xy: Float)

Zwraca nowy prostokąt reprezentujący ten prostokąt przesunięty o negację określonej wartości na osiach X i Y.

operator RectF RectF.minus(xy: PointF)

Zwraca nowy prostokąt reprezentujący ten prostokąt przesunięty o negację określonego punktu.

infix RectF RectF.or(r: RectF)

Zwraca sumę 2 prostokątów jako nowy prostokąt.

operator RectF RectF.plus(r: RectF)

Wykonuje sumę tego prostokąta i określonego prostokąta i zwraca wynik jako nowy prostokąt.

operator RectF RectF.plus(xy: Float)

Zwraca nowy prostokąt reprezentujący ten prostokąt przesunięty o określoną wartość na osiach X i Y.

operator RectF RectF.plus(xy: PointF)

Zwraca nowy prostokąt reprezentujący ten prostokąt przesunięty o określony punkt.

operator RectF RectF.times(factor: Int)

Zwraca nowy prostokąt, którego komponenty są przeskalowane o współczynnik.

operator RectF RectF.times(factor: Float)

Zwraca nowy prostokąt, którego komponenty są przeskalowane o współczynnik.

Rect RectF.toRect()

Zwraca reprezentację Rect tego prostokąta.

Region RectF.toRegion()

Zwraca reprezentację Region tego prostokąta.

RectF RectF.transform(m: Matrix)

Przekształca ten prostokąt w miejscu, używając podanego obiektu Matrix, i zwraca ten prostokąt.

infix Region RectF.xor(r: RectF)

Zwraca sumę zbiorów minus część wspólna 2 prostokątów jako nowy region.

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

Zwraca część wspólną tego regionu i określonego obiektu Rect jako nowy region.

infix Region Region.and(r: Region)

Zwraca część wspólną tego regionu i określonego regionu jako nowy region.

operator Boolean Region.contains(p: Point)

Zwraca wartość „true”, jeśli region zawiera określony punkt.

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

Wykonuje podane działanie na każdym prostokącie w tym regionie.

operator Iterator<Rect> Region.iterator()

Zwraca Iterator dla prostokątów w tym regionie.

operator Region Region.minus(r: Rect)

Zwraca różnicę między tym regionem a określonym obiektem Rect jako nowy region.

operator Region Region.minus(r: Region)

Zwraca różnicę między tym regionem a określonym regionem jako nowy region.

operator Region Region.not()

Zwraca negację tego regionu jako nowy region.

infix Region Region.or(r: Rect)

Zwraca sumę tego regionu i określonego obiektu Rect jako nowy region.

infix Region Region.or(r: Region)

Zwraca sumę tego regionu i określonego regionu jako nowy region.

operator Region Region.plus(r: Rect)

Zwraca sumę tego regionu i określonego obiektu Rect jako nowy region.

operator Region Region.plus(r: Region)

Zwraca sumę tego regionu i określonego regionu jako nowy region.

operator Region Region.unaryMinus()

Zwraca negację tego regionu jako nowy region.

infix Region Region.xor(r: Rect)

Zwraca sumę zbiorów pomniejszoną o część wspólną tego regionu i określonego obiektu Rect jako nowy region.

infix Region Region.xor(r: Region)

Zwraca sumę zbiorów minus część wspólna tego regionu i określonego regionu jako nowy region.

W przypadku android.graphics.Shader:
Jednostka Shader.transform(block: Matrix.() -> Unit)

Zawijaj określony blok w wywołaniach Shader.getLocalMatrix i Shader.setLocalMatrix.

kotlin.Int
operator Int Int.component1()

Zwraca komponent alfa koloru w formacie int.

operator Int Int.component2()

Zwraca składową czerwoną koloru w postaci liczby całkowitej.

operator Int Int.component3()

Zwraca zielony komponent koloru w postaci liczby całkowitej.

operator Int Int.component4()

Zwraca niebieski komponent koloru w postaci liczby całkowitej.

infix Long Int.convertTo(colorSpace: Named)

Konwertuje odbiornik koloru typu int na kolor typu long w określonej przestrzeni barw.

infix Long Int.convertTo(colorSpace: ColorSpace)

Konwertuje odbiornik koloru typu int na kolor typu long w określonej przestrzeni barw.

Kolor Int.toColor()

Tworzy nową instancję Color na podstawie liczby całkowitej koloru.

Long Int.toColorLong()

Konwertuje określony kolor ARGB typu int na kolor RGBA typu long w przestrzeni barw sRGB.

W przypadku kotlin.Long
operator Float Long.component1()

Zwraca pierwszy komponent koloru.

operator Float Long.component2()

Zwraca drugi składnik koloru.

operator Float Long.component3()

Zwraca trzeci składnik koloru.

operator Float Long.component4()

Zwraca czwarty komponent koloru.

infix Long Long.convertTo(colorSpace: Named)

Konwertuje kolor typu long receiver na kolor typu long w określonej przestrzeni barw.

infix Long Long.convertTo(colorSpace: ColorSpace)

Konwertuje kolor typu long receiver na kolor typu long w określonej przestrzeni barw.

Color Long.toColor()

Tworzy nową instancję Color z koloru typu long.

Int Long.toColorInt()

Konwertuje określony kolor w formacie long na kolor w formacie int ARGB.

W przypadku kotlin.String:
Int String.toColorInt()

Zwróć odpowiedni kolor Int tego String.

Właściwości rozszerzenia

kotlin.Int
Int Int.alpha()

Zwraca komponent alfa koloru w formacie int.

Int Int.blue()

Zwraca niebieski komponent koloru w postaci liczby całkowitej.

Int Int.green()

Zwraca zielony komponent koloru w postaci liczby całkowitej.

Float Int.luminance()

Zwraca względną luminancję koloru (liczba całkowita), zakładając kodowanie sRGB.

Int Int.red()

Zwraca składową czerwoną koloru w postaci liczby całkowitej.

W przypadku kotlin.Long
Float Long.alpha()

Zwraca komponent alfa koloru typu long.

Float Long.blue()

Zwraca niebieski komponent koloru.

ColorSpace Long.colorSpace()

Zwraca przestrzeń barw zakodowaną w określonym kolorze.

Float Long.green()

Zwraca zielony komponent koloru w formacie long.

Wartość logiczna Long.isSrgb()

Wskazuje, czy kolor jest w przestrzeni barw sRGB.

Wartość logiczna Long.isWideGamut()

Wskazuje, czy kolor jest w szerokiej gamie przestrzeni barw.

Float Long.luminance()

Zwraca względną luminancję koloru.

Float Long.red()

Zwraca składową czerwoną koloru w formacie long.

Funkcje najwyższego poziomu

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

Zwraca zmienną bitmapę o określonej szerokości i wysokości.

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

Zwraca zmienną bitmapę o określonej szerokości i wysokości.

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

Tworzy macierz obrotu określoną przez kąt obrotu w stopniach wokół punktu obrotu o współrzędnych (px, py).

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

Tworzy macierz skali ze współczynnikiem skalowania sx i sy odpowiednio na osi x i y.

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

Tworzy macierz translacji z wartościami translacji tx i ty odpowiednio na osiach x i y.

androidx.core.graphics.drawable

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku android.graphics.Bitmap:
Ikona Bitmap.toAdaptiveIcon()

Utwórz ikonę z tej adaptacyjnej mapy bitowej.

BitmapDrawable Bitmap.toDrawable(resources: Resources)

Utwórz BitmapDrawable z tej bitmapy.

Ikona Bitmap.toIcon()

Utwórz ikonę z tej bitmapy.

W przypadku android.graphics.Color:
ColorDrawable Color.toDrawable()

Utwórz ColorDrawable z tego koloru (za pomocą Color.toArgb).

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

Zwróć reprezentację Bitmap tego obiektu Drawable.

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

Aktualizuje granice tego elementu rysowalnego.

W przypadku android.net.Uri:
Ikona Uri.toIcon()

Utwórz ikonę z tego identyfikatora URI.

kotlin.ByteArray
Ikona ByteArray.toIcon()

Utwórz ikonę z tego ByteArray.

kotlin.Int
ColorDrawable Int.toDrawable()

Utwórz ColorDrawable na podstawie tej wartości koloru.

androidx.core.location

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Zwraca szerokość geograficzną tej lokalizacji.

operator Double Location.component2()

Zwraca długość geograficzną obiektu Location.

androidx.core.net

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku android.net.Uri:
Plik Uri.toFile()

Tworzy File z podanego Uri.

Aby użyć java.io.File:
Uri File.toUri()

Tworzy identyfikator URI z podanego pliku.

W przypadku kotlin.String:
Uri String.toUri()

Tworzy identyfikator URI na podstawie podanego zakodowanego ciągu znaków identyfikatora URI.

androidx.core.os

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Wersja metody Handler.postAtTime, która zmienia kolejność parametrów, umożliwiając umieszczenie działania poza nawiasami.

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

Wersja Handler.postDelayed, która zmienia kolejność parametrów, umożliwiając umieszczenie działania poza nawiasami.

Funkcje najwyższego poziomu

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

Zwraca nowy obiekt Bundle z podanymi parami klucz-wartość jako elementami.

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

Zwraca nowy obiekt PersistableBundle z podanymi parami klucz-wartość jako elementami.

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

Zawiń określony blok w wywołania Trace.beginSection (z podaną wartością sectionName) i Trace.endSection.

androidx.core.text

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku android.text.Spannable:
Jednostka Spannable.clearSpans()

Usuń wszystkie zakresy z tego tekstu.

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

Dodaj zakres do zakresu początek&hellip;koniec tekstu.

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

Dodaj span do zakresu tekstu.

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

Umieść dołączony tekst w builderAction w BackgroundColorSpan.

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

Umieść dołączony tekst w builderAction w pogrubionym StyleSpan.

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

Umieść dołączony tekst w builderAction w ForegroundColorSpan.

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

Umieść dołączony tekst w builderAction w spans.

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

Umieść dołączony tekst w builderAction w span.

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

Umieść dołączony tekst w obiekcie builderAction w obiekcie StyleSpan z kursywą.

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

Umieść dołączony tekst w builderAction w RelativeSizeSpan.

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

Umieść dołączony tekst w builderAction w StrikethroughSpan.

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

Umieść dołączony tekst w builderAction w SubscriptSpan.

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

Umieść dołączony tekst w builderAction w SuperscriptSpan.

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

Dołączony tekst w builderAction umieść w UnderlineSpan.

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

Pobierz wszystkie zakresy, które są instancją T.

String Spanned.toHtml(option: Int = TO_HTML_PARAGRAPH_LINES_CONSECUTIVE)

Zwraca ciąg znaków HTML z zakresów w tym obiekcie Spanned.

W przypadku kotlin.CharSequence
Wartość logiczna CharSequence.isDigitsOnly()

Zwraca informację, czy dany ciąg CharSequence zawiera tylko cyfry.

Spannable CharSequence.toSpannable()

Zwraca nowy obiekt Spannable z CharSequence lub samo źródło, jeśli jest już instancją SpannableString.

Spanned CharSequence.toSpanned()

Zwraca nowy obiekt Spanned z CharSequence lub samo źródło, jeśli jest już instancją SpannedString.

Int CharSequence.trimmedLength()

Zwraca długość, jaką miałby określony ciąg CharSequence, gdyby spacje i znaki sterujące ASCII zostały usunięte z początku i końca, tak jak w przypadku String.trim.

W przypadku kotlin.String:
String String.htmlEncode()

Zakoduj ciąg znaków w formacie HTML.

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

Zwraca obiekt Spanned po przeanalizowaniu tego ciągu znaków jako kodu HTML.

Właściwości rozszerzenia

W przypadku java.util.Locale
Int Locale.layoutDirection()

Zwraca kierunek układu dla danego języka.

Funkcje najwyższego poziomu

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

Tworzy nowy ciąg znaków, wypełniając nowo utworzony obiekt SpannableStringBuilder za pomocą podanego obiektu builderAction, a następnie konwertując go na obiekt SpannedString.

androidx.core.transition

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Dodaj detektor do tego przejścia, korzystając z dostępnych działań.

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

Dodaj działanie, które zostanie wywołane po anulowaniu tego przejścia.

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

Dodaj działanie, które zostanie wywołane po zakończeniu tego przejścia.

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

Dodaj działanie, które zostanie wywołane, gdy to przejście zostanie wstrzymane.

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

Dodaj działanie, które zostanie wywołane, gdy to przejście zostanie wznowione po wstrzymaniu.

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

Dodaj działanie, które zostanie wywołane po rozpoczęciu tego przejścia.

androidx.core.util

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku android.util.AtomicFile:
ByteArray AtomicFile.readBytes()

Pobiera całą zawartość tego pliku jako tablicę bajtów.

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

Pobiera całą zawartość tego pliku jako ciąg znaków przy użyciu kodowania UTF-8 lub określonego zestawu znaków.

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

Wykonaj operacje zapisu w bloku w tym pliku.

Jednostka AtomicFile.writeBytes(array: ByteArray)

Ustawia zawartość tego pliku jako tablicę bajtów.

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

Ustawia zawartość tego pliku jako tekst zakodowany przy użyciu UTF-8 lub określonego zestawu znaków.

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

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna LongSparseArray<T>.containsKey(key: Long)

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna LongSparseArray<T>.containsValue(value: T)

Zwraca wartość „true”, jeśli kolekcja zawiera value.

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

Wykonuje podane działanie dla każdej pary klucz-wartość.

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

Zwraca wartość odpowiadającą kluczowi lub wartość domyślną, jeśli klucz nie istnieje.

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

Zwraca wartość odpowiadającą kluczowi lub z defaultValue, jeśli nie jest obecna.

Wartość logiczna LongSparseArray<T>.isEmpty()

Zwraca wartość „true”, gdy kolekcja nie zawiera żadnych elementów.

Wartość logiczna LongSparseArray<T>.isNotEmpty()

Zwraca wartość „true”, gdy kolekcja zawiera elementy.

LongIterator LongSparseArray<T>.keyIterator()

Zwraca iterator po kluczach kolekcji.

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

Tworzy nową kolekcję, dodając lub zastępując wpisy z innej.

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

Zaktualizuj tę kolekcję, dodając lub zastępując wpisy z innych.

Wartość logiczna LongSparseArray<T>.remove(key: Long, value: T)

Usuwa wpis dla klucza tylko wtedy, gdy jest on zmapowany na wartość.

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

Umożliwia używanie operatora indeksu do przechowywania wartości w kolekcji.

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

Zwraca iterator po wartościach kolekcji.

W przypadku android.util.Pair:
operator F Pair<F, S>.component1()

Zwraca pierwszy komponent pary.

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

Zwraca drugi komponent pary.

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

Zwraca tę parę jako kotlin.Pair.

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

Zwraca część wspólną tego zakresu i zakresu other.

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

Zwraca najmniejszy zakres, który obejmuje ten zakres i wartość.

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

Zwraca najmniejszy zakres, który obejmuje ten i inny.

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

Zwraca ten zakres jako ClosedRange.

W przypadku android.util.Size:
operator Int Size.component1()

Zwraca „width”, czyli pierwszy komponent tego rozmiaru.

operator Int Size.component2()

Zwraca „height”, czyli drugi komponent tego rozmiaru.

W przypadku android.util.SizeF:
operator Float SizeF.component1()

Zwraca „width”, czyli pierwszy komponent tego obiektu SizeF.

operator Float SizeF.component2()

Zwraca „height”, czyli drugi komponent tego obiektu SizeF.

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

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna SparseArray<T>.containsKey(key: Int)

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna SparseArray<T>.containsValue(value: T)

Zwraca wartość „true”, jeśli kolekcja zawiera value.

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

Wykonuje podane działanie dla każdej pary klucz-wartość.

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

Zwraca wartość odpowiadającą kluczowi lub wartość domyślną, jeśli klucz nie istnieje.

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

Zwraca wartość odpowiadającą kluczowi lub z defaultValue, jeśli nie jest obecna.

Wartość logiczna SparseArray<T>.isEmpty()

Zwraca wartość „true”, gdy kolekcja nie zawiera żadnych elementów.

Wartość logiczna SparseArray<T>.isNotEmpty()

Zwraca wartość „true”, gdy kolekcja zawiera elementy.

IntIterator SparseArray<T>.keyIterator()

Zwraca iterator po kluczach kolekcji.

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

Tworzy nową kolekcję, dodając lub zastępując wpisy z innej.

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

Zaktualizuj tę kolekcję, dodając lub zastępując wpisy z innych.

Wartość logiczna SparseArray<T>.remove(key: Int, value: T)

Usuwa wpis dla klucza tylko wtedy, gdy jest on zmapowany na wartość.

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

Umożliwia używanie operatora indeksu do przechowywania wartości w kolekcji.

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

Zwraca iterator po wartościach kolekcji.

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

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna SparseBooleanArray.containsKey(key: Int)

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna SparseBooleanArray.containsValue(value: Boolean)

Zwraca wartość „true”, jeśli kolekcja zawiera value.

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

Wykonuje podane działanie dla każdej pary klucz-wartość.

Wartość logiczna SparseBooleanArray.getOrDefault(key: Int, defaultValue: Boolean)

Zwraca wartość odpowiadającą kluczowi lub wartość domyślną, jeśli klucz nie istnieje.

Wartość logiczna SparseBooleanArray.getOrElse(key: Int, defaultValue: () -> Boolean)

Zwraca wartość odpowiadającą kluczowi lub z defaultValue, jeśli nie jest obecna.

Wartość logiczna SparseBooleanArray.isEmpty()

Zwraca wartość „true”, gdy kolekcja nie zawiera żadnych elementów.

Wartość logiczna SparseBooleanArray.isNotEmpty()

Zwraca wartość „true”, gdy kolekcja zawiera elementy.

IntIterator SparseBooleanArray.keyIterator()

Zwraca iterator po kluczach kolekcji.

operator SparseBooleanArray SparseBooleanArray.plus(other: SparseBooleanArray)

Tworzy nową kolekcję, dodając lub zastępując wpisy z innej.

Jednostka SparseBooleanArray.putAll(other: SparseBooleanArray)

Zaktualizuj tę kolekcję, dodając lub zastępując wpisy z innych.

Wartość logiczna SparseBooleanArray.remove(key: Int, value: Boolean)

Usuwa wpis dla klucza tylko wtedy, gdy jest on zmapowany na wartość.

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

Umożliwia używanie operatora indeksu do przechowywania wartości w kolekcji.

BooleanIterator SparseBooleanArray.valueIterator()

Zwraca iterator po wartościach kolekcji.

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

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna SparseIntArray.containsKey(key: Int)

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna SparseIntArray.containsValue(value: Int)

Zwraca wartość „true”, jeśli kolekcja zawiera value.

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

Wykonuje podane działanie dla każdej pary klucz-wartość.

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

Zwraca wartość odpowiadającą kluczowi lub wartość domyślną, jeśli klucz nie istnieje.

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

Zwraca wartość odpowiadającą kluczowi lub z defaultValue, jeśli nie jest obecna.

Wartość logiczna SparseIntArray.isEmpty()

Zwraca wartość „true”, gdy kolekcja nie zawiera żadnych elementów.

Wartość logiczna SparseIntArray.isNotEmpty()

Zwraca wartość „true”, gdy kolekcja zawiera elementy.

IntIterator SparseIntArray.keyIterator()

Zwraca iterator po kluczach kolekcji.

operator SparseIntArray SparseIntArray.plus(other: SparseIntArray)

Tworzy nową kolekcję, dodając lub zastępując wpisy z innej.

Jednostka SparseIntArray.putAll(other: SparseIntArray)

Zaktualizuj tę kolekcję, dodając lub zastępując wpisy z innych.

Wartość logiczna SparseIntArray.remove(key: Int, value: Int)

Usuwa wpis dla klucza tylko wtedy, gdy jest on zmapowany na wartość.

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

Umożliwia używanie operatora indeksu do przechowywania wartości w kolekcji.

IntIterator SparseIntArray.valueIterator()

Zwraca iterator po wartościach kolekcji.

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

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna SparseLongArray.containsKey(key: Int)

Zwraca wartość „true”, jeśli kolekcja zawiera key.

Wartość logiczna SparseLongArray.containsValue(value: Long)

Zwraca wartość „true”, jeśli kolekcja zawiera value.

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

Wykonuje podane działanie dla każdej pary klucz-wartość.

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

Zwraca wartość odpowiadającą kluczowi lub wartość domyślną, jeśli klucz nie istnieje.

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

Zwraca wartość odpowiadającą kluczowi lub z defaultValue, jeśli nie jest obecna.

Wartość logiczna SparseLongArray.isEmpty()

Zwraca wartość „true”, gdy kolekcja nie zawiera żadnych elementów.

Wartość logiczna SparseLongArray.isNotEmpty()

Zwraca wartość „true”, gdy kolekcja zawiera elementy.

IntIterator SparseLongArray.keyIterator()

Zwraca iterator po kluczach kolekcji.

operator SparseLongArray SparseLongArray.plus(other: SparseLongArray)

Tworzy nową kolekcję, dodając lub zastępując wpisy z innej.

Jednostka SparseLongArray.putAll(other: SparseLongArray)

Zaktualizuj tę kolekcję, dodając lub zastępując wpisy z innych.

Wartość logiczna SparseLongArray.remove(key: Int, value: Long)

Usuwa wpis dla klucza tylko wtedy, gdy jest on ustawiony na wartość.

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

Umożliwia używanie operatora indeksu do przechowywania wartości w kolekcji.

LongIterator SparseLongArray.valueIterator()

Zwraca iterator po wartościach kolekcji.

W przypadku kotlin.Double:
Połowa Double.toHalf()

Zwraca instancję Half reprezentującą podaną wartość Double.

W przypadku kotlin.Float:
Połowa Float.toHalf()

Zwraca instancję Half reprezentującą podaną wartość Float.

W przypadku kotlin.Pair:
Pair<F, S> Pair<F, S>.toAndroidPair()

Zwraca ten obiekt kotlin.Pair jako obiekt Pair na Androidzie.

W przypadku kotlin.Short:
Połowa Short.toHalf()

Zwraca instancję Half reprezentującą dany obiekt Short.

W przypadku kotlin.String:
Połowa String.toHalf()

Zwraca instancję Half reprezentującą dany String.

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

Zwraca ten obiekt ClosedRange jako Range.

Właściwości rozszerzenia

W przypadku android.util.LongSparseArray:
Int LongSparseArray<T>.size()

Zwraca liczbę par klucz-wartość w kolekcji.

W przypadku android.util.SparseArray:
Int SparseArray<T>.size()

Zwraca liczbę par klucz-wartość w kolekcji.

W przypadku android.util.SparseBooleanArray:
Int SparseBooleanArray.size()

Zwraca liczbę par klucz-wartość w kolekcji.

W przypadku android.util.SparseIntArray:
Int SparseIntArray.size()

Zwraca liczbę par klucz-wartość w kolekcji.

W przypadku android.util.SparseLongArray:
Int SparseLongArray.size()

Zwraca liczbę wpisów klucz-wartość w kolekcji.

Funkcje najwyższego poziomu

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

Tworzy LruCache z podanymi parametrami.

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

Tworzy zakres od tej wartości Comparable do tamtej.

androidx.core.view

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Zwraca true, jeśli element znajduje się w tym menu.

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

Wykonuje podane działanie na każdym elemencie w tym menu.

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

Wykonuje podane działanie na każdym elemencie w tym menu, podając jego indeks sekwencyjny.

operator MenuItem Menu.get(index: Int)

Zwraca menu o podanym indeksie.

Wartość logiczna Menu.isEmpty()

Zwraca wartość „true”, jeśli menu nie zawiera żadnych elementów.

Wartość logiczna Menu.isNotEmpty()

Zwraca wartość „true”, jeśli menu zawiera co najmniej 1 element.

operator MutableIterator<MenuItem> Menu.iterator()

Zwraca obiekt MutableIterator dla elementów w tym menu.

operator Unit Menu.minusAssign(item: MenuItem)

Usuwa element z tego menu.

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

Wykonuje dane działanie, gdy ten widok jest dołączony do okna.

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

Wykonuje dane działanie, gdy ten widok zostanie odłączony od okna.

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

Wykonuje dane działanie, gdy ten widok jest ułożony.

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

Wykonuje dane działanie, gdy ten widok zostanie ponownie ułożony.

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

Wykonuje dane działanie, gdy drzewo widoku ma zostać narysowane.

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

Zwróć reprezentację Bitmap tego View.

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

Wersja View.postDelayed, która zmienia kolejność parametrów, umożliwiając umieszczenie działania poza nawiasami.

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

Wersja metody View.postOnAnimationDelayed, która zmienia kolejność parametrów, umożliwiając umieszczenie działania poza nawiasami.

Jednostka View.setPadding(@Px size: Int)

Ustawia dopełnienie widoku.

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

Wykonuje block z użyciem layoutParams widoku i ponownie przypisuje layoutParams ze zaktualizowaną wersją.

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

Wykonuje block z wpisaną wersją layoutParams widoku i ponownie przypisuje layoutParams ze zaktualizowaną wersją.

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

Aktualizuje dopełnienie tego widoku.

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

Aktualizuje względne dopełnienie tego widoku.

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

Zwraca true, jeśli view znajduje się w tej grupie widoków.

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

Wykonuje określone działanie na każdym widoku w tej grupie widoków.

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

Wykonuje podane działanie na każdym widoku w tej grupie widoków, podając jego indeks sekwencyjny.

operator View ViewGroup.get(index: Int)

Zwraca widok o podanym indeksie.

Wartość logiczna ViewGroup.isEmpty()

Zwraca wartość „true”, jeśli ta grupa widoków nie zawiera żadnych widoków.

Wartość logiczna ViewGroup.isNotEmpty()

Zwraca wartość „prawda”, jeśli ta grupa widoków zawiera co najmniej 1 widok.

operator MutableIterator<View> ViewGroup.iterator()

Zwraca MutableIterator dla widoków w tej grupie widoków.

operator Unit ViewGroup.minusAssign(view: View)

Usuwa widok z tej grupy widoków.

operator Unit ViewGroup.plusAssign(view: View)

Dodaje widok do tej grupy widoków.

W przypadku android.view.ViewGroup.MarginLayoutParams:
Jednostka MarginLayoutParams.setMargins(@Px size: Int)

Ustawia marginesy w MarginLayoutParams obiektu ViewGroup.

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

Aktualizuje marginesy w obiekcie ViewGroup.MarginLayoutParams elementu ViewGroup.

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

Aktualizuje względne marginesy w MarginLayoutParams obiektu ViewGroup.

Właściwości rozszerzenia

W przypadku android.view.Menu:
Sequence<MenuItem> Menu.children()

Zwraca Sequence elementów w tym menu.

Int Menu.size()

Zwraca liczbę elementów w tym menu.

android.view.View
Wartość logiczna View.isGone()

Zwraca wartość „true”, gdy widoczność tego widoku to View.GONE, w przeciwnym razie zwraca wartość „false”.

Wartość logiczna View.isInvisible()

Zwraca wartość „true”, gdy widoczność tego widoku to View.INVISIBLE, a w przeciwnym razie – „false”.

Wartość logiczna View.isVisible()

Zwraca wartość „true”, gdy widoczność tego widoku to View.VISIBLE, lub „false” w przeciwnym razie.

Int View.marginBottom()

Zwraca dolny margines, jeśli LayoutParams tego widoku to ViewGroup.MarginLayoutParams, w przeciwnym razie zwraca 0.

Int View.marginEnd()

Zwraca margines końcowy, jeśli LayoutParams tego widoku to ViewGroup.MarginLayoutParams, w przeciwnym razie 0.

Int View.marginLeft()

Zwraca lewy margines, jeśli LayoutParams tego widoku to ViewGroup.MarginLayoutParams, w przeciwnym razie zwraca 0.

Int View.marginRight()

Zwraca prawy margines, jeśli LayoutParams tego widoku to ViewGroup.MarginLayoutParams, w przeciwnym razie zwraca 0.

Int View.marginStart()

Zwraca margines początkowy, jeśli LayoutParams tego widoku to ViewGroup.MarginLayoutParams, w przeciwnym razie zwraca 0.

Int View.marginTop()

Zwraca górny margines, jeśli LayoutParams tego widoku to ViewGroup.MarginLayoutParams, w przeciwnym razie zwraca 0.

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

Zwraca Sequence w widokach podrzędnych w tej grupie widoków.

Int ViewGroup.size()

Zwraca liczbę widoków w tej grupie widoków.

androidx.core.widget

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Dodaj do tego widoku TextView detektor zmiany tekstu, korzystając z podanych działań

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

Dodaj działanie, które zostanie wywołane po zmianie tekstu.

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

Dodaj działanie, które zostanie wywołane przed zmianą tekstu.

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

Dodaj działanie, które zostanie wywołane, gdy tekst będzie się zmieniać.

androidx.dynamicanimation.animation

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku SpringAnimation:
SpringAnimation SpringAnimation.withSpringForceProperties(func: SpringForce.() -> Unit)

Aktualizuje lub stosuje właściwości siły sprężyny, takie jak SpringForce.mDampingRatio, SpringForce.mFinalPosition i sztywność w SpringAnimation.

Funkcje najwyższego poziomu

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

Tworzy obiekt FlingAnimation dla właściwości, do której można uzyskać dostęp za pomocą podanej metody ustawiającej i pobierającej.

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

Tworzy obiekt SpringAnimation dla właściwości, do której można uzyskać dostęp za pomocą podanej metody ustawiającej i pobierającej.

androidx.fragment.app

Zależność

Odlotowe

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

Kotlin

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

Funkcje rozszerzeń

android.view.View
F View.findFragment()

Znajdź Fragment powiązany z View.

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

Zwraca obiekt delegowany właściwości, aby uzyskać dostęp do obiektu ViewModel aktywności nadrzędnej. Jeśli określono factoryProducer, obiekt ViewModelProvider.Factory zwrócony przez niego zostanie użyty do utworzenia obiektu ViewModel po raz pierwszy.

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

Metoda pomocnicza do tworzenia ViewModelLazy, która rozwiązuje null przekazany jako factoryProducer do fabryki domyślnej.

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

Zwraca delegata właściwości, aby uzyskać dostęp do ViewModel, który domyślnie jest ograniczony do tego Fragmentu:

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

Dodaj fragment do powiązanego obiektu FragmentManager, rozwijając widok fragmentu do widoku kontenera określonego przez containerViewId, aby później pobrać go za pomocą FragmentManager.findFragmentById.

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

Dodaj fragment do powiązanego obiektu FragmentManager bez dodawania go do widoku kontenera.

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

Zastąp istniejący fragment, który został dodany do kontenera.

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

Uruchom body w FragmentTransaction, który jest automatycznie zatwierdzany, jeśli zakończy się bez wyjątku.

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

Uruchom body w FragmentTransaction, który jest automatycznie zatwierdzany, jeśli zakończy się bez wyjątku.

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

Uruchom body w FragmentTransaction, który jest automatycznie zatwierdzany, jeśli zakończy się bez wyjątku.

androidx.fragment.app.testing

Zależność

Odlotowe

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

Kotlin

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

Funkcje najwyższego poziomu

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

Uruchamia fragment z podanymi argumentami hostowany przez pustą klasę FragmentActivity przy użyciu podanej klasy FragmentFactory i czeka, aż osiągnie stan wznowienia.

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

Uruchamia fragment z podanymi argumentami hostowanymi przez pusty element FragmentActivity, używając metody instantiate do utworzenia fragmentu, i czeka, aż osiągnie on stan wznowienia.

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

Uruchamia fragment w kontenerze widoku głównego aktywności android.R.id.content z podanymi argumentami hostowanymi przez pusty element FragmentActivity i czeka, aż osiągnie stan wznowienia.

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

Uruchamia fragment w kontenerze widoku głównego aktywności android.R.id.content z podanymi argumentami hostowanymi przez pusty element FragmentActivity przy użyciu metody instantiate do utworzenia fragmentu i czeka, aż osiągnie on stan wznowienia.

androidx.lifecycle

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Tworzy obiekt LiveData, który ma wartości zebrane z pierwotnego przepływu.

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

Tworzy obiekt LiveData, który ma wartości zebrane z pierwotnego przepływu.

W przypadku org.reactivestreams.Publisher:
LiveData<T> Publisher<T>.toLiveData()

Tworzy obserwowalny strumień LiveData z obiektu Publisher ReactiveStreams.

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

Tworzy Flow zawierający wartości wysyłane przez źródłowe LiveData: na początku kolektor przepływu otrzymuje najnowszą wartość przechowywaną przez LiveData, a następnie obserwuje aktualizacje LiveData.

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

Tworzy nowy obiekt LiveData, który nie emituje wartości, dopóki nie zmieni się wartość źródłowego obiektu this LiveData.

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

Zwraca obiekt LiveData zmapowany z obiektu this LiveData przez zastosowanie funkcji transform do każdej wartości ustawionej w obiekcie this LiveData.

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

Dodaje podaną funkcję lambda onChanged jako obserwatora w ramach cyklu życia podanego właściciela i zwraca odniesienie do obserwatora.

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

Zwraca obiekt LiveData zmapowany z wejściowego obiektu this LiveData przez zastosowanie funkcji transform do każdej wartości ustawionej w obiekcie this.

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

Dostosowuje dany strumień LiveData do Publisher ReactiveStreams.

W przypadku ViewModelProvider
VM ViewModelProvider.get()

Zwraca istniejący model ViewModel lub tworzy nowy w zakresie (zwykle we fragmencie lub aktywności) powiązanym z tym elementem ViewModelProvider.

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

Uruchamia dany blok, gdy Lifecycle obiektu LifecycleOwner jest co najmniej w stanie Lifecycle.State.CREATED.

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

Uruchamia dany blok, gdy Lifecycle elementu LifecycleOwner jest co najmniej w stanie Lifecycle.State.RESUMED.

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

Uruchamia dany blok, gdy Lifecycle obiektu LifecycleOwner jest co najmniej w stanie Lifecycle.State.STARTED.

W polu Cykl życia
suspend T Lifecycle.whenCreated(block: suspend CoroutineScope.() -> T)

Uruchamia dany blok, gdy Lifecycle jest co najmniej w stanie Lifecycle.State.CREATED.

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

Uruchamia dany blok, gdy Lifecycle jest co najmniej w stanie Lifecycle.State.RESUMED.

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

Uruchamia dany blok, gdy Lifecycle jest co najmniej w stanie Lifecycle.State.STARTED.

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

Uruchamia dany blok w CoroutineDispatcher, który wykonuje blok w głównym wątku i zawiesza wykonywanie, chyba że stan Lifecycle jest co najmniej minState.

Właściwości rozszerzenia

W polu Cykl życia
LifecycleCoroutineScope Lifecycle.coroutineScope()

CoroutineScope powiązany z tym cyklem życia.

LifecycleOwner
LifecycleCoroutineScope LifecycleOwner.lifecycleScope()

CoroutineScope powiązany z Lifecycle tego LifecycleOwner.

W przypadku ViewModel:
CoroutineScope ViewModel.viewModelScope()

CoroutineScope powiązany z tym ViewModel.

Funkcje najwyższego poziomu

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

Tworzy obiekt LiveData, który ma wartości uzyskane z danego bloku wykonywanego w LiveDataScope.

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

Tworzy obiekt LiveData, który ma wartości uzyskane z danego bloku wykonywanego w LiveDataScope.

androidx.navigation

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Znajdź NavController na podstawie identyfikatora widoku i zawierającej go aktywności.

NavArgsLazy<Args> Activity.navArgs()

Zwraca obiekt delegowany Lazy, aby uzyskać dostęp do dodatków aktywności jako instancji Args.

android.view.View
NavController View.findNavController()

Znajdź obiekt NavController powiązany z obiektem View.

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

Utwórz nowy obiekt ActivityNavigator.Destination.

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

tworzyć zagnieżdżony obiekt NavGraph,

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

Zwraca true, jeśli w tym wykresie nawigacji zostanie znalezione miejsce docelowe z id.

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

Zwraca miejsce docelowe z id.

operator Unit NavGraph.minusAssign(node: NavDestination)

Usuwa element node z tego wykresu nawigacyjnego.

operator Unit NavGraph.plusAssign(node: NavDestination)

Dodaje miejsce docelowe do tego NavGraph.

operator Unit NavGraph.plusAssign(other: NavGraph)

Dodaj do tej kolekcji wszystkie miejsca docelowe z innej kolekcji.

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

Utwórz nowy obiekt NavGraph.

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

Utwórz nowy obiekt NavGraph.

W przypadku NavigatorProvider:
operator T NavigatorProvider.get(name: String)

Pobiera zarejestrowany obiekt Navigator według nazwy.

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

Pobiera zarejestrowany obiekt Navigator, używając nazwy podanej w adnotacji Navigator.Name.

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

Utwórz nowy obiekt NavGraph.

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

Zarejestruj nawigator, używając nazwy podanej w adnotacji Navigator.Name.

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

Zarejestruj Navigator według nazwy.

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

Zwraca obiekt delegowany właściwości, aby uzyskać dostęp do obiektu ViewModel ograniczonego do wykresu nawigacyjnego na stosie wstecznym {@link NavController}:

Funkcje najwyższego poziomu

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

Utwórz nową instancję ActivityNavigator.Extras z określoną instancją ActivityOptionsCompat lub dowolnymi flagami Intent.FLAG_ACTIVITY_.

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

Utwórz nowy obiekt NavOptions.

androidx.navigation.fragment

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku NavGraphBuilder
Jednostka NavGraphBuilder.dialog(@IdRes id: Int)

Utwórz nowy obiekt DialogFragmentNavigator.Destination.

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

Utwórz nowy obiekt DialogFragmentNavigator.Destination.

Jednostka NavGraphBuilder.fragment(@IdRes id: Int)

Utwórz nowy obiekt FragmentNavigator.Destination.

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

Utwórz nowy obiekt FragmentNavigator.Destination.

Fragment
NavController Fragment.findNavController()

Znajdowanie obiektu NavController na podstawie obiektu Fragment

NavArgsLazy<Args> Fragment.navArgs()

Zwraca delegata Lazy, aby uzyskać dostęp do argumentów fragmentu jako instancji Args.

Funkcje najwyższego poziomu

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

Utwórz nową instancję FragmentNavigator.Extras z podanymi elementami współdzielonymi.

androidx.navigation.ui

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

android.view.MenuItem
Wartość logiczna MenuItem.onNavDestinationSelected(navController: NavController)

Próba przejścia do elementu NavDestination powiązanego z tym elementem MenuItem.

W przypadku androidx.appcompat.app.AppCompatActivity:
Jednostka AppCompatActivity.setupActionBarWithNavController(navController: NavController, drawerLayout: DrawerLayout?)

Konfiguruje pasek ActionBar zwracany przez AppCompatActivity.getSupportActionBar do użycia z NavController.

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

Konfiguruje pasek ActionBar zwracany przez AppCompatActivity.getSupportActionBar do użycia z NavController.

W przypadku androidx.appcompat.widget.Toolbar:
Jednostka Toolbar.setupWithNavController(navController: NavController, drawerLayout: DrawerLayout?)

Konfiguruje pasek narzędzi do użycia z NavController.

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

Konfiguruje pasek narzędzi do użycia z NavController.

W przypadku com.google.android.material.appbar.CollapsingToolbarLayout:
Jednostka CollapsingToolbarLayout.setupWithNavController(toolbar: Toolbar, navController: NavController, drawerLayout: DrawerLayout?)

Konfiguruje CollapsingToolbarLayout i Toolbar do użycia z NavController.

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

Konfiguruje CollapsingToolbarLayout i Toolbar do użycia z NavController.

W przypadku com.google.android.material.bottomnavigation.BottomNavigationView:
Jednostka BottomNavigationView.setupWithNavController(navController: NavController)

Konfiguruje BottomNavigationView do użycia z NavController.

W przypadku com.google.android.material.navigation.NavigationView:
Jednostka NavigationView.setupWithNavController(navController: NavController)

Konfiguruje NavigationView do użycia z NavController.

Dla NavController
Wartość logiczna NavController.navigateUp(drawerLayout: DrawerLayout?)

Obsługuje przycisk W górę, przekazując jego działanie do podanego elementu NavController.

Wartość logiczna NavController.navigateUp(appBarConfiguration: AppBarConfiguration)

Obsługuje przycisk W górę, przekazując jego działanie do podanego elementu NavController.

Funkcje najwyższego poziomu

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

Opcje konfiguracji metod NavigationUI, które współdziałają z implementacjami wzorca paska aplikacji, takimi jak android.support.v7.widget.Toolbar, android.support.design.widget.CollapsingToolbarLayout i android.support.v7.app.ActionBar.

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

Opcje konfiguracji metod NavigationUI, które współdziałają z implementacjami wzorca paska aplikacji, takimi jak android.support.v7.widget.Toolbar, android.support.design.widget.CollapsingToolbarLayout i android.support.v7.app.ActionBar.

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

Opcje konfiguracji metod NavigationUI, które współdziałają z implementacjami wzorca paska aplikacji, takimi jak android.support.v7.widget.Toolbar, android.support.design.widget.CollapsingToolbarLayout i android.support.v7.app.ActionBar.

androidx.paging

Zależność

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

Funkcje rozszerzeń

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)

Tworzy obiekt Flowable<PagedList> z obiektu DataSource.Factory, co ułatwia korzystanie z 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)

Tworzy obiekt Flowable<PagedList> z obiektu DataSource.Factory, co ułatwia korzystanie z RxPagedListBuilder.

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

Tworzy LiveData<PagedList> z tego DataSource.Factory, co jest wygodne w przypadku LivePagedListBuilder.

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

Tworzy LiveData<PagedList> z tego DataSource.Factory, co jest wygodne w przypadku 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)

Tworzy Observable<PagedList> z tego DataSource.Factory, co jest wygodne dla 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)

Tworzy Observable<PagedList> z tego DataSource.Factory, co jest wygodne dla RxPagedListBuilder.

Funkcje najwyższego poziomu

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)

Tworzy obiekt PagedList.Config, który jest wygodnym odpowiednikiem obiektu 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)

Tworzy obiekt PagedList, który ułatwia korzystanie z obiektu PagedList.Builder.

androidx.palette.graphics

Zależność

Odlotowe

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

Kotlin

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

Funkcje rozszerzeń

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

Zwraca wybrany próbnik dla danego celu z palety lub null, jeśli nie można go znaleźć.

androidx.preference

Zależność

Odlotowe

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

Kotlin

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

Funkcje rozszerzeń

W przypadku PreferenceGroup:
operator Boolean PreferenceGroup.contains(preference: Preference)

Zwraca true, jeśli w tej grupie preferencji zostanie znaleziony element preference.

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

Wykonuje podane działanie na każdej preferencji w tej grupie preferencji.

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

Wykonuje podane działanie na każdym ustawieniu w tej grupie ustawień, podając jego indeks sekwencyjny.

operator T? PreferenceGroup.get(key: CharSequence)

Zwraca preferencję z identyfikatorem key lub null, jeśli nie znaleziono preferencji z identyfikatorem key.

operator Preference PreferenceGroup.get(index: Int)

Zwraca preferencje w index.

Wartość logiczna PreferenceGroup.isEmpty()

Zwraca wartość „true”, jeśli ta grupa preferencji nie zawiera żadnych preferencji.

Wartość logiczna PreferenceGroup.isNotEmpty()

Zwraca wartość „prawda”, jeśli ta grupa preferencji zawiera co najmniej 1 preferencję.

operator MutableIterator<Preference> PreferenceGroup.iterator()

Zwraca MutableIterator dla preferencji w tej grupie preferencji.

operator Unit PreferenceGroup.minusAssign(preference: Preference)

Usuwa preference z tej grupy ustawień.

operator Unit PreferenceGroup.plusAssign(preference: Preference)

Dodaje preference do tej grupy preferencji.

Właściwości rozszerzenia

W przypadku PreferenceGroup:
Sequence<Preference> PreferenceGroup.children()

Zwraca sekwencję preferencji w tej grupie preferencji.

Int PreferenceGroup.size()

Zwraca liczbę preferencji w tej grupie preferencji.

androidx.room

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

W przypadku RoomDatabase
suspend R RoomDatabase.withTransaction(block: suspend () -> R)

Wywołuje określony blok zawieszenia w transakcji bazy danych.

androidx.sqlite.db

Zależność

Groovy

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

Kotlin

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

Funkcje rozszerzeń

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

Uruchom body w transakcji, oznaczając ją jako udaną, jeśli zakończy się bez wyjątku.

androidx.work

Zależność

Funkcje rozszerzeń

W przypadku com.google.common.util.concurrent.ListenableFuture:
suspend R ListenableFuture<R>.await()

Czeka na zakończenie ListenableFuture bez blokowania wątku.

W polu Operacja
suspend Operation.State.SUCCESS! Operation.await()

Czeka na operację bez blokowania wątku.

Dane
Wartość logiczna Data.hasKeyWithValueOfType(key: String)

Zwraca wartość „prawda”, jeśli instancja Data ma wartość odpowiadającą danemu kluczowi key z oczekiwanym typem T.

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

Ustawia InputMerger w OneTimeWorkRequest.Builder.

Funkcje najwyższego poziomu

OneTimeWorkRequest.Builder OneTimeWorkRequestBuilder()

Tworzy obiekt OneTimeWorkRequest z podanym obiektem ListenableWorker.

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

Tworzy obiekt PeriodicWorkRequest.Builder z danym obiektem ListenableWorker.

PeriodicWorkRequest.Builder PeriodicWorkRequestBuilder(repeatInterval: Duration)

Tworzy obiekt PeriodicWorkRequest.Builder z danym obiektem ListenableWorker.

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

Tworzy obiekt PeriodicWorkRequest.Builder z danym obiektem ListenableWorker.

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

Tworzy obiekt PeriodicWorkRequest.Builder z danym obiektem ListenableWorker.

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

Konwertuje listę par na obiekt Data.

androidx.work.testing

Zależność

Dynamiczny

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

Kotlin

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

Funkcje najwyższego poziomu

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

Tworzy instancję 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())

Tworzy instancję TestWorkerBuilder.

com.google.android.play.core.ktx

Zależność

Dynamiczny

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

Kotlin

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

Funkcje rozszerzeń

W przypadku com.google.android.play.core.appupdate.AppUpdateManager:
suspend AppUpdateInfo AppUpdateManager.requestAppUpdateInfo()

Żąda informacji o dostępności aktualizacji bieżącej aplikacji

suspend Unit AppUpdateManager.requestCompleteUpdate()

W przypadku elastycznego procesu aktualizacji powoduje zakończenie aktualizacji.

Flow<AppUpdateResult> AppUpdateManager.requestUpdateFlow()

Punkt wejścia do monitorowania dostępności i postępu aktualizacji.

Wartość logiczna AppUpdateManager.startUpdateFlowForResult(appUpdateInfo: AppUpdateInfo, appUpdateType: Int, fragment: Fragment, requestCode: Int)

Wersja metody AppUpdateManager.startUpdateFlowForResult, która akceptuje fragment AndroidX do zwracania wyniku.

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

Wersja zawieszona metody SplitInstallManager.cancelInstall

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

Wersja zawieszona metody SplitInstallManager.deferredInstall

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

Wersja zawieszona metody SplitInstallManager.deferredLanguageInstall

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

Wersja zawieszona metody SplitInstallManager.deferredLanguageUninstall

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

Wersja zawieszona metody SplitInstallManager.deferredUninstall

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

Rozpoczyna instalację żądanych modułów lub języków.

Flow<SplitInstallSessionState> SplitInstallManager.requestProgressFlow()

Tworzy i zwraca buforowany obiekt Flow, który będzie dostarczać wszystkie zdarzenia postępu dla trwających instalacji podzielonych.

suspend SplitInstallSessionState SplitInstallManager.requestSessionState(sessionId: Int)

Wersja zawieszona metody SplitInstallManager.getSessionState

suspend List<SplitInstallSessionState> SplitInstallManager.requestSessionStates()

Wersja zawieszona metody SplitInstallManager.getSessionStates

Wartość logiczna SplitInstallManager.startConfirmationDialogForResult(sessionState: SplitInstallSessionState, fragment: Fragment, requestCode: Int)

Wersja metody SplitInstallManager.startConfirmationDialogForResult, która akceptuje fragment AndroidX do zwracania wyniku.

Właściwości rozszerzenia

W przypadku com.google.android.play.core.appupdate.AppUpdateInfo:
Int AppUpdateInfo.installStatus()

Zwraca stan postępu aktualizacji.

Wartość logiczna AppUpdateInfo.isFlexibleUpdateAllowed()

Zwraca true, jeśli elastyczna aktualizacja jest dozwolona.

Wartość logiczna AppUpdateInfo.isImmediateUpdateAllowed()

Zwraca wartość true, jeśli natychmiastowa aktualizacja jest dozwolona.

W przypadku com.google.android.play.core.install.InstallState:
Wartość logiczna InstallState.hasTerminalStatus()

Oznacza to, że jest to stan końcowy (nie będzie już żadnych aktualizacji) i należy go odpowiednio obsłużyć (sukces, anulowanie lub niepowodzenie).

Int InstallState.installErrorCode()

Zwraca kod błędu instalacji lub {@link InstallErrorCode#NO_ERROR}.

Int InstallState.installStatus()

Zwraca stan instalacji.

String! InstallState.packageName()

Zwraca nazwę pakietu instalowanej aplikacji.

W przypadku com.google.android.play.core.splitinstall.SplitInstallSessionState:
Long SplitInstallSessionState.bytesDownloaded()

Liczba bajtów pobranych przez tę aktualizację.

Int SplitInstallSessionState.errorCode()

Kod błędu tej aktualizacji.

Wartość logiczna SplitInstallSessionState.hasTerminalStatus()

Oznacza, że ta aktualizacja jest ostatnia, czyli że nie będzie już więcej aktualizacji dla tej sesji.

List<String> SplitInstallSessionState.languages()

Języki uwzględnione w tej aktualizacji.

List<String> SplitInstallSessionState.moduleNames()

Moduły uwzględnione w tej aktualizacji.

Int SplitInstallSessionState.sessionId()

Identyfikator sesji tej aktualizacji.

Int SplitInstallSessionState.status()

Kod stanu tej aktualizacji.

Long SplitInstallSessionState.totalBytesToDownload()

Łączna liczba bajtów do pobrania w ramach tej aktualizacji.

Funkcje najwyższego poziomu

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

Funkcja ułatwiająca tworzenie obiektu SplitInstallStateUpdatedListener.