Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Swiperefreshlayout
Zaimplementuj wzór interfejsu przesuń, aby odświeżyć.
Ostatnia aktualizacja |
Wersja stabilna |
Wersja kandydująca do publikacji |
Wersja Beta |
Wersja alfa |
12 lutego 2025 r. |
1.1.0 |
- |
1.2.0-beta01 |
- |
Deklarowanie zależności
Aby dodać zależność od SwipeRefreshLayout, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Maven firmy Google.
Dodaj zależności dla artefaktów, których potrzebujesz, w pliku build.gradle
aplikacji lub modułu:
Groovy
dependencies {
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
}
Kotlin
dependencies {
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
}
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Opinia
Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli zauważysz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nowy problem, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz zagłosować na istniejący problem, klikając przycisk z gwiazdką.
Tworzenie nowego zgłoszenia
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wersja 1.2.0
Wersja 1.2.0-beta01
12 lutego 2025 r.
Element androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-beta01
został zwolniony. Wersja 1.2.0-beta01 zawiera te komity.
Zmiany w interfejsie API
- Określona możliwość zwracania wartości przez parametry metody
SwipeRefreshLayout
i typy zwracanych wartości (I006d1, b/236497776)
Poprawki błędów
- Biblioteka ta korzysta teraz z adnotacji JSpecify dotyczących nullowości, które są używane w zależności od typu. Aby wymusić prawidłowe użycie, deweloperzy Kotlina powinni użyć tego argumentu kompilatora:
-Xjspecify-annotations=strict
(jest to domyślna wartość od wersji 2.1.0 kompilatora Kotlina). (Iaf490, b/326456246)
Wersja 1.2.0-alpha01
22 lipca 2020 r.
Element androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01
został zwolniony. Wersja 1.2.0-alpha01 zawiera te commity.
Poprawki błędów
requestDisallowInterceptTouchEvent(boolean)
obsługuje teraz tę prośbę tak jak każdą inną grupę ViewGroup. Nie zalecamy tego, ale nowe zachowanie można wyłączyć za pomocą setLegacyRequestDisallowInterceptTouchEventEnabled
. (I968da, b/141855018)
Wersja 1.1.0
Wersja 1.1.0
24 czerwca 2020 r.
Element androidx.swiperefreshlayout:swiperefreshlayout:1.1.0
został zwolniony. Wersja 1.1.0 zawiera te zatwierdzenia.
Najważniejsze zmiany od wersji 1.0.0
SwipeRefreshLayout
teraz implementuje NestedScrollingChild3
i NestedScrollingParent3
.
Wersja 1.1.0-rc01
15 kwietnia 2020 roku
androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-rc01
jest publikowany bez zmian od 1.1.0-beta01
. Wersja 1.1.0-rc01 zawiera te zatwierdzenia.
Wersja 1.1.0-beta01
4 marca 2020 r.
androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-beta01
jest publikowany bez zmian od 1.1.0-alpha03
. Wersja 1.1.0-beta01 zawiera te commity.
Wersja 1.1.0-alpha03
9 października 2019 r.
Element androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha03
został zwolniony. Wersja 1.1.0-alpha03 zawiera te commity.
Nowe funkcje
- Dodaliśmy nowy atrybut stylu
R.styleable.SwipeRefreshLayout_swipeRefreshLayoutProgressSpinnerBackgroundColor
, który pozwala ustawić kolor tła wskaźnika postępu. (aosp/931124)
Zmiany w interfejsie API
requestDisallowInterceptTouchEvent(boolean)
jest teraz zawsze propagowany do swoich nadrzędnych. Nowe zachowanie można wyłączyć za pomocą parametru setLegacyRequestDisallowInterceptTouchEventEnabled
, ale zdecydowanie nie zalecamy tego. (aosp/1108540)
Poprawki błędów
- Rozwiązaliśmy problem z zagnieżdżonym przewijaniem, w którym komponent SwipeRefreshLayout ma przewijalny element nadrzędny (np. ViewPager2) i przewijalny element podrzędny. (b/138314213)
Wersja 1.1.0-alpha02
2 lipca 2019 r.
Element androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha02
został zwolniony. Zmiany zawarte w tej wersji znajdziesz tutaj.
Poprawki błędów
- Wdrożenie zapisywania i przywracania stanu odświeżania SwipeRefreshLayout
- Rozwiązanie błędu związanego z użytecznością, który występował, gdy układ SwipeRefreshLayout był osadzony w układzie RecyclerView
Wersja 1.1.0-alpha01
3 grudnia 2018 r.
Zmiany w interfejsie API
- aosp/737631:
SwipeRefreshLayout
implementuje teraz NestedScrollingChild3
i NestedScrollingParent3
, co umożliwia elementom rodzicielskim i potomnym w ramach 3 poziomów przewijania przekazywanie informacji o odległości przewiniętego tekstu za pomocą SwipeRefreshLayout
. Jeśli kod dewelopera obecnie zastępuje funkcję SwipeRefreshLayout.onNestedScroll(View, int, int, int, int, int)
, prawdopodobnie nie będzie już wywoływany i zamiast tego należy zastąpić funkcję SwipeRefreshLayout.onNestedScroll(View, int, int, int, int, int, int[])
. Podobnie metoda SwipeRefreshLayout.dispatchNestedScroll(int, int, int, int, int[], int)
prawdopodobnie nie będzie już wywoływana, a zamiast niej należy zastąpić metodę SwipeRefreshLayout.dispatchNestedScroll(int, int, int, int, int[], int, int[])
.
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-07-27 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-07-27 UTC."],[],[],null,["# Swiperefreshlayout\n==================\n\n[Code Sample](https://github.com/android/views-widgets-samples) \nAPI Reference \n[androidx.swiperefreshlayout.widget](/reference/kotlin/androidx/swiperefreshlayout/widget/package-summary) \nImplement the swipe-to-refresh UI pattern. \n\n| Latest Update | Stable Release | Release Candidate | Beta Release | Alpha Release |\n|-------------------|--------------------------------------------------------------|-------------------|----------------------------------------------------------------------------|---------------|\n| February 12, 2025 | [1.1.0](/jetpack/androidx/releases/swiperefreshlayout#1.1.0) | - | [1.2.0-beta01](/jetpack/androidx/releases/swiperefreshlayout#1.2.0-beta01) | - |\n\nDeclaring dependencies\n----------------------\n\nTo add a dependency on SwipeRefreshLayout, you must add the Google Maven repository to your\nproject. Read [Google's Maven repository](/studio/build/dependencies#google-maven)\nfor more information.\n\nAdd the dependencies for the artifacts you need in the `build.gradle` file for\nyour app or module: \n\n### Groovy\n\n```groovy\ndependencies {\n implementation \"androidx.swiperefreshlayout:swiperefreshlayout:1.1.0\"\n}\n```\n\n### Kotlin\n\n```kotlin\ndependencies {\n implementation(\"androidx.swiperefreshlayout:swiperefreshlayout:1.1.0\")\n}\n```\n\nFor more information about dependencies, see [Add build dependencies](/studio/build/dependencies).\n\nFeedback\n--------\n\nYour feedback helps make Jetpack better. Let us know if you discover new issues or have\nideas for improving this library. Please take a look at the\n[existing issues](https://issuetracker.google.com/issues?q=componentid:460836%20status:open)\nin this library before you create a new one. You can add your vote to an existing issue by\nclicking the star button.\n\n[Create a new issue](https://issuetracker.google.com/issues/new?component=460836&template=1422576)\n\nSee the [Issue Tracker documentation](https://developers.google.com/issue-tracker)\nfor more information.\n\nVersion 1.2.0\n-------------\n\n### Version 1.2.0-beta01\n\nFebruary 12, 2025\n\n`androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-beta01` is released. Version 1.2.0-beta01 contains [these commits](https://android.googlesource.com/platform/frameworks/support/+log/9f60cc700129e30cee9df020005c317fb39d32ec..7344269b2d862d014a647efafcd7735f0d53f1da/swiperefreshlayout/swiperefreshlayout).\n\n**API Changes**\n\n- Specified nullability of `SwipeRefreshLayout` method parameters and return types ([I006d1](https://android-review.googlesource.com/#/q/I006d15100662ca77db65dd0cf4735c65cee84dfd), [b/236497776](https://issuetracker.google.com/issues/236497776))\n\n**Bug Fixes**\n\n- This library now uses [JSpecify nullness annotations](https://jspecify.dev/), which are type-use. Kotlin developers should use the following compiler argument to enforce correct usage: `-Xjspecify-annotations=strict` (this is the default starting with version 2.1.0 of the Kotlin compiler). ([Iaf490](https://android-review.googlesource.com/#/q/Iaf49080833b450a7dbba982367bfd863a2ead6ad), [b/326456246](https://issuetracker.google.com/issues/326456246))\n\n### Version 1.2.0-alpha01\n\nJuly 22, 2020\n\n`androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01` is released. [Version 1.2.0-alpha01 contains these commits.](https://android.googlesource.com/platform/frameworks/support/+log/6b97b146b743340c9d9b6fa54e735404374f2a5f..9f60cc700129e30cee9df020005c317fb39d32ec/swiperefreshlayout/swiperefreshlayout)\n\n**Bug Fixes**\n\n- `requestDisallowInterceptTouchEvent(boolean)` now honors the request like any other ViewGroup. While strongly discouraged, new behavior can be disabled with `setLegacyRequestDisallowInterceptTouchEventEnabled`. ([I968da](https://android-review.googlesource.com/#/q/I968da769d8400caf6f52c8a12595ee19fb4c0773), [b/141855018](https://issuetracker.google.com/issues/141855018))\n\nVersion 1.1.0\n-------------\n\n### Version 1.1.0\n\nJune 24, 2020\n\n`androidx.swiperefreshlayout:swiperefreshlayout:1.1.0` is released. [Version 1.1.0 contains these commits.](https://android.googlesource.com/platform/frameworks/support/+log/6563b7854e79a3f7182efe27ee726867a091b603..6b97b146b743340c9d9b6fa54e735404374f2a5f/swiperefreshlayout/swiperefreshlayout)\n\n**Major changes since 1.0.0**\n\n- `SwipeRefreshLayout` now implements `NestedScrollingChild3` and `NestedScrollingParent3`.\n\n### Version 1.1.0-rc01\n\nApril 15, 2020\n\n`androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-rc01` is released with no changes since `1.1.0-beta01`. [Version 1.1.0-rc01 contains these commits.](https://android.googlesource.com/platform/frameworks/support/+log/666ae665acfcfa2a20eccc18e4494808169742f4..6563b7854e79a3f7182efe27ee726867a091b603/swiperefreshlayout/swiperefreshlayout)\n\n### Version 1.1.0-beta01\n\nMarch 4, 2020\n\n`androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-beta01` is released with no changes since `1.1.0-alpha03`. [Version 1.1.0-beta01 contains these commits.](https://android.googlesource.com/platform/frameworks/support/+log/f14ad350142290622d1645e1d0e280cbe8ca4c2f..666ae665acfcfa2a20eccc18e4494808169742f4/swiperefreshlayout/swiperefreshlayout)\n\n### Version 1.1.0-alpha03\n\nOctober 9, 2019\n\n`androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha03` is released. [Version 1.1.0-alpha03 contains these commits](https://android.googlesource.com/platform/frameworks/support/+log/9a7b3cb32a2c7adac9b7af4bc2f996f1eb79fc12..f14ad350142290622d1645e1d0e280cbe8ca4c2f/swiperefreshlayout).\n\n**New features**\n\n- We have a new style attribute `R.styleable.SwipeRefreshLayout_swipeRefreshLayoutProgressSpinnerBackgroundColor`to set the background color of the progress indicator. ([aosp/931124](https://android-review.googlesource.com/931124))\n\n**API changes**\n\n- `requestDisallowInterceptTouchEvent(boolean)` now always propagates up to its parents. While strongly discouraged, new behavior can be disabled with `setLegacyRequestDisallowInterceptTouchEventEnabled`. ([aosp/1108540](https://android-review.googlesource.com/1108540))\n\n**Bug fixes**\n\n- Fixed issue with nested scrolling where SwipeRefreshLayout has a scrollable parent (e.g. [ViewPager2](/jetpack/androidx/releases/viewpager2)) and a scrollable child. ([b/138314213](https://issuetracker.google.com/issues/138314213))\n\n### Version 1.1.0-alpha02\n\nJuly 2, 2019\n\n`androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha02` is released. The commits included in this version can be found [here](https://android.googlesource.com/platform/frameworks/support/+log/d9ca300b3f70db75744a6d743f85e3784287434a..9a7b3cb32a2c7adac9b7af4bc2f996f1eb79fc12/swiperefreshlayout).\n| **Note:** This version is dependent on the Java 8 programming language. Please read [Use Java 8 language features](/studio/write/java8-support) to learn how to use it in your project.\n\n**Bug fixes**\n\n- Implemented saving and restoring of the refreshing state of SwipeRefreshLayout\n- Fixed usability bug when SwipeRefreshLayout is embedded in a RecyclerView\n\n### Version 1.1.0-alpha01\n\nDecember 3, 2018\n\n**API changes**\n\n- [aosp/737631](): `SwipeRefreshLayout` now implements `NestedScrollingChild3` and `NestedScrollingParent3`, enabling nested scrolling 3 parents and children to pass consumed nested scrolling distance information through `SwipeRefreshLayout`. If developer code currently overrides `SwipeRefreshLayout.onNestedScroll(View, int, int, int, int, int)`, it will likely no longer be called and `SwipeRefreshLayout.onNestedScroll(View, int, int, int, int, int, int[])` should be overridden instead. Likewise, `SwipeRefreshLayout.dispatchNestedScroll(int, int, int, int, int[], int)` will likely no longer be called and `SwipeRefreshLayout.dispatchNestedScroll(int, int, int, int, int[], int, int[])` should be overridden instead."]]