SwipeRefreshLayoutを使用してページを自動的にリフレッシュ
1747 ワード
まず、SwipeRefreshLayoutにlistenerを設定します.SwipeRefreshLayout.setOnRefreshListener(this);
次にActivityにonRefresh()メソッドを実装させます.
oncreate()メソッドでSwipeRefreshLayoutを開きます.
特に注意:SwipeRefreshLayout.setRefreshing(true);このコードはonRefreshをトリガーしません
適切な場所でSwipeRefreshLayoutを閉じるには、次のようにする必要があります.
これで済んだら、それはいけませんよ.通常、ページを開いたばかりのときにローカルキャッシュのデータを表示してから、ネットワークデータを要求し、成功した後に新しいデータを表示します.うん.
次にActivityにonRefresh()メソッドを実装させます.
@Override
public void onRefresh() {
// ,
loadData();
}
oncreate()メソッドでSwipeRefreshLayoutを開きます.
SwipeRefreshLayout.post(new Runnable() {
@Override
public void run() {
// onRefresh
SwipeRefreshLayout.setRefreshing(true);
//
onRefresh();
}
});
特に注意:SwipeRefreshLayout.setRefreshing(true);このコードはonRefreshをトリガーしません
適切な場所でSwipeRefreshLayoutを閉じるには、次のようにする必要があります.
SwipeRefreshLayout.post(new Runnable() {
@Override
public void run() {
//
SwipeRefreshLayout.setRefreshing(false);
}
});
これで済んだら、それはいけませんよ.通常、ページを開いたばかりのときにローカルキャッシュのデータを表示してから、ネットワークデータを要求し、成功した後に新しいデータを表示します.うん.