Android
Przesuń, aby odświeżyć
Szukaj…
Składnia
- setColorSchemeResources ustawia kolory wskaźnika SwipeToRefreshLayout
- setOnRefreshListener określa, co zrobić, gdy układ zostanie przesunięty
- app: layout_behavior = "@ string / appbar_scrolling_view_behavior" jeśli masz pasek narzędzi ze swoim układem, dodaj go za pomocą scrollFlags w pasku narzędzi, a pasek narzędzi przesunie się w górę podczas przewijania w dół i ponownie wsunie podczas przewijania w górę.
Przesuń, aby odświeżyć za pomocą RecyclerView
Aby dodać układ Przesuń, aby odświeżyć za pomocą RecyclerView, dodaj do pliku układu działania / fragmentu:
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/refresh_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:scrollbars="vertical" />
</android.support.v4.widget.SwipeRefreshLayout>
W swoim działaniu / fragmencie dodaj następujące elementy, aby zainicjować SwipeToRefreshLayout :
SwipeRefreshLayout mSwipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.refresh_layout);
mSwipeRefreshLayout.setColorSchemeResources(R.color.green_bg,
android.R.color.holo_green_light,
android.R.color.holo_orange_light,
android.R.color.holo_red_light);
mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
// Execute code when refresh layout swiped
}
});
Jak dodać Swipe-to-Refresh do swojej aplikacji
Upewnij się, że do pliku build.gradle
aplikacji w zależnościach dodano następującą zależność:
compile 'com.android.support:support-core-ui:24.2.0'
Następnie dodaj SwipeRefreshLayout
do swojego układu:
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/swipe_refresh_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<!-- place your view here -->
</android.support.v4.widget.SwipeRefreshLayout>
Na koniec zaimplementuj detektor SwipeRefreshLayout.OnRefreshListener
.
mSwipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_refresh_layout);
mSwipeRefreshLayout.setOnRefreshListener(new OnRefreshListener() {
@Override
public void onRefresh() {
// your code
}
});
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow