- 要選Import Project...
SwipeRefreshLayoutFragment.java
fragment_swipe_refresh_layout.xml
注意如果沒有下面這段程式,重整中切換fragment會卡住
@Override
public void onPause() {
super.onPause();
if (swipeRefreshLayout!=null) {
swipeRefreshLayout.setRefreshing(false);
swipeRefreshLayout.clearAnimation();
}
}
-
這個library有好多header可以用,這邊使用的是StoreHouseHeader
-
注意若是使用PtrHandler要實作checkCanDoRefresh否則想ListView這種會無法往上滑(會直接觸發refresh)
ptrFrameLayout.setPtrHandler(new PtrHandler() {
@Override
public boolean checkCanDoRefresh(PtrFrameLayout ptrFrameLayout, View view, View view2) {
boolean canDoRefresh;
//TODO: check if canDoRefresh or not
return canDoRefresh;
}
@Override
public void onRefreshBegin(PtrFrameLayout ptrFrameLayout) {
//TODO: refresh code...
}
});
- 而使用PtrDefaultHandler會自動checkCanDoRefresh,在ListView和GridView上測試狀況良好
ptrFrameLayout.setPtrHandler(new PtrDefaultHandler() {
@Override
public void onRefreshBegin(PtrFrameLayout ptrFrameLayout) {
//TODO: refresh code...
}
});