22
33import android .graphics .Rect ;
44import android .os .Bundle ;
5+ import android .support .annotation .NonNull ;
56import android .support .annotation .Nullable ;
7+ import android .support .v4 .widget .SwipeRefreshLayout ;
68import android .support .v7 .widget .GridLayoutManager ;
79import android .support .v7 .widget .LinearLayoutManager ;
810import android .support .v7 .widget .PopupMenu ;
1618import android .widget .TextView ;
1719import android .widget .Toast ;
1820
19- import com .ztiany .adapter .LoadMode ;
20- import com .ztiany .adapter .OnLoadMoreListener ;
21- import com .ztiany .adapter .WrapperAdapter ;
21+ import com .ztiany .loadmore . adapter .LoadMode ;
22+ import com .ztiany .loadmore . adapter .OnLoadMoreListener ;
23+ import com .ztiany .loadmore . adapter .WrapperAdapter ;
2224
2325import java .util .ArrayList ;
2426import java .util .Arrays ;
2527import java .util .List ;
2628
27- import in .srain .cube .views .ptr .PtrClassicFrameLayout ;
28- import in .srain .cube .views .ptr .PtrDefaultHandler ;
29- import in .srain .cube .views .ptr .PtrFrameLayout ;
3029
3130public class DemoFragment extends BaseLayoutFragment {
3231
@@ -38,7 +37,7 @@ public class DemoFragment extends BaseLayoutFragment {
3837 private List <String > mData ;
3938 protected WrapperAdapter mWrapperAdapter ;
4039 protected RecyclerView mRecyclerView ;
41- protected PtrClassicFrameLayout mPtrClassicFrameLayout ;
40+ protected SwipeRefreshLayout mRefreshLayout ;
4241
4342 private static final String LAYOUT_TYPE = "layout_type" ;
4443 private static final String CLICK_LOAD_MORE = "isClickLoadMore" ;
@@ -114,7 +113,7 @@ public void onClick(View v) {
114113 }
115114 });
116115 mRecyclerView = view .findViewById (R .id .fragment_recycler_rv );
117- mPtrClassicFrameLayout = view .findViewById (R .id .fragment_recycler_ptr );
116+ mRefreshLayout = view .findViewById (R .id .fragment_recycler_ptr );
118117 }
119118
120119 @ Override
@@ -145,33 +144,28 @@ public void getItemOffsets(Rect outRect, View view, RecyclerView parent, Recycle
145144
146145 setOnLoadMoreListener ();
147146
148- mPtrClassicFrameLayout . setPtrHandler (new PtrDefaultHandler () {
147+ mRefreshLayout . setOnRefreshListener (new SwipeRefreshLayout . OnRefreshListener () {
149148 @ Override
150- public void onRefreshBegin ( final PtrFrameLayout frame ) {
149+ public void onRefresh ( ) {
151150 if (mWrapperAdapter .isLoadingMore ()) {
152- frame . refreshComplete ( );
151+ mRefreshLayout . setRefreshing ( false );
153152 return ;
154153 }
155154
156- frame .postDelayed (new Runnable () {
155+ mRefreshLayout .postDelayed (new Runnable () {
157156 @ Override
158157 public void run () {
159158 mData .clear ();
160159 for (int i = 0 ; i < 20 ; i ++) {
161160 mData .add ("我是Item " + i );
162161 }
163162 mRecyclerAdapter .notifyDataSetChanged ();
164- frame . refreshComplete ( );
163+ mRefreshLayout . setRefreshing ( false );
165164 mWrapperAdapter .loadCompleted (true );
166165 Toast .makeText (getContext (), "刷新完毕" , Toast .LENGTH_SHORT ).show ();
167166 }
168167 }, 1000 );
169168 }
170-
171- @ Override
172- public boolean checkCanDoRefresh (PtrFrameLayout frame , View content , View header ) {
173- return super .checkCanDoRefresh (frame , mRecyclerView , header );
174- }
175169 });
176170 }
177171
@@ -186,7 +180,7 @@ public boolean canLoadMore() {
186180 @ Override
187181 public void onLoadMore () {
188182
189- mPtrClassicFrameLayout .postDelayed (new Runnable () {
183+ mRefreshLayout .postDelayed (new Runnable () {
190184 @ Override
191185 public void run () {
192186
@@ -231,8 +225,9 @@ public void run() {
231225
232226 private void initAdapter () {
233227 mRecyclerAdapter = new BaseAdapter <String , ViewHolder <String >>(getContext (), mData ) {
228+ @ NonNull
234229 @ Override
235- public ViewHolder <String > onCreateViewHolder (ViewGroup parent , int viewType ) {
230+ public ViewHolder <String > onCreateViewHolder (@ NonNull ViewGroup parent , int viewType ) {
236231 View inflate = mLayoutInflater .inflate (R .layout .item , parent , false );
237232 return new ViewHolder <String >(inflate ) {
238233 private TextView mTextView ;
@@ -256,7 +251,7 @@ public void onClick(View v) {
256251 }
257252
258253 @ Override
259- public void onBindViewHolder (ViewHolder <String > viewHolder , final int position ) {
254+ public void onBindViewHolder (@ NonNull ViewHolder <String > viewHolder , final int position ) {
260255 viewHolder .bindData (mData .get (position ));
261256 }
262257 };
@@ -266,4 +261,4 @@ protected void onBindData(TextView textView, String data) {
266261 textView .setText (data );
267262 }
268263
269- }
264+ }
0 commit comments