Android
スワイプして更新する
サーチ…
構文
- setColorSchemeResourcesは、SwipeToRefreshLayout インジケータの色を設定します。
- setOnRefreshListenerは、レイアウトをスワイプしたときの処理を設定します。
- app:layout_behavior = "@文字列/ appbar_scrolling_view_behavior"レイアウトにツールバーがある場合、ツールバーのscrollFlagsにこれを追加すると、スクロールダウン中にツールバーが上にスライドし、スクロールアップ中に再びスライドします。
RecyclerViewでスワイプして更新する
RecyclerViewで スワイプ・トゥ・リフレッシュ・レイアウトを追加するには、アクティビティー/フラグメント・レイアウト・ファイルに以下を追加します。
<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>
あなたのActivity / Fragmentに以下を追加して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
}
});
スワイプ・ツー・リフレッシュをあなたのアプリに加える方法
依存関係の下でアプリケーションのbuild.gradle
ファイルに次の依存関係が追加されていることを確認してください。
compile 'com.android.support:support-core-ui:24.2.0'
次に、レイアウトにSwipeRefreshLayout
を追加します。
<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>
最後に、 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
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow