Skip to content

Commit 9407c54

Browse files
committed
重构
1 parent dcf3d84 commit 9407c54

4 files changed

Lines changed: 15 additions & 61 deletions

File tree

diycode-app/src/main/java/com/gcssloop/diycode/base/app/SimpleRefreshRecyclerFragment.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ public abstract class SimpleRefreshRecyclerFragment<T, Event extends BaseEvent<L
4949
}
5050

5151
@Override protected void onError(Event event, String postType) {
52-
toast("加载失败");
52+
if (postType.equals(POST_LOAD_MORE)) {
53+
toast("加载更多失败");
54+
} else if (postType.equals(POST_REFRESH)) {
55+
toast("刷新数据失败");
56+
}
5357
}
5458
}

diycode-app/src/main/java/com/gcssloop/diycode/fragment/NewsListFragment.java

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@
2828
import android.support.v7.widget.RecyclerView;
2929
import android.view.View;
3030

31-
import com.gcssloop.diycode.base.app.RefreshRecyclerFragment;
32-
import com.gcssloop.diycode.base.recyclerview.SpeedyLinearLayoutManager;
31+
import com.gcssloop.diycode.base.app.SimpleRefreshRecyclerFragment;
3332
import com.gcssloop.diycode.fragment.provider.NewsProvider;
3433
import com.gcssloop.diycode_sdk.api.news.bean.New;
3534
import com.gcssloop.diycode_sdk.api.news.event.GetNewsListEvent;
@@ -38,7 +37,7 @@
3837

3938
import java.util.List;
4039

41-
public class NewsListFragment extends RefreshRecyclerFragment<New, GetNewsListEvent> {
40+
public class NewsListFragment extends SimpleRefreshRecyclerFragment<New, GetNewsListEvent> {
4241

4342
private boolean isFirstLaunch = true;
4443

@@ -71,36 +70,21 @@ public static NewsListFragment newInstance() {
7170
adapter.register(New.class, new NewsProvider(getContext()));
7271
}
7372

74-
@NonNull @Override protected RecyclerView.LayoutManager getRecyclerViewLayoutManager() {
75-
return new SpeedyLinearLayoutManager(getContext());
76-
}
77-
7873
@NonNull @Override protected String request(int offset, int limit) {
7974
return mDiycode.getNewsList(null, offset,limit);
8075
}
8176

8277
@Override protected void onRefresh(GetNewsListEvent event, HeaderFooterAdapter adapter) {
83-
adapter.clearDatas();
84-
adapter.addDatas(event.getBean());
85-
toast("下拉刷新成功");
78+
super.onRefresh(event, adapter);
8679
mDataCache.saveNewsListObj(adapter.getDatas());
8780
}
8881

8982
@Override protected void onLoadMore(GetNewsListEvent event, HeaderFooterAdapter adapter) {
9083
// TODO 排除重复数据
91-
adapter.addDatas(event.getBean());
92-
toast("加载更多成功");
84+
super.onLoadMore(event, adapter);
9385
mDataCache.saveNewsListObj(adapter.getDatas());
9486
}
9587

96-
@Override protected void onError(GetNewsListEvent event, String postType) {
97-
if (postType.equals(POST_LOAD_MORE)) {
98-
toast("加载更多失败");
99-
} else if (postType.equals(POST_REFRESH)) {
100-
toast("刷新数据失败");
101-
}
102-
}
103-
10488
@Override public void onDestroyView() {
10589
super.onDestroyView();
10690
// 存储 PageIndex

diycode-app/src/main/java/com/gcssloop/diycode/fragment/NodeTopicListFragment.java

Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,13 @@
2727
import android.support.annotation.NonNull;
2828
import android.support.v7.widget.RecyclerView;
2929

30-
import com.gcssloop.diycode.base.app.RefreshRecyclerFragment;
31-
import com.gcssloop.diycode.base.recyclerview.SpeedyLinearLayoutManager;
30+
import com.gcssloop.diycode.base.app.SimpleRefreshRecyclerFragment;
3231
import com.gcssloop.diycode.fragment.provider.TopicProvider;
3332
import com.gcssloop.diycode_sdk.api.topic.bean.Topic;
3433
import com.gcssloop.diycode_sdk.api.topic.event.GetTopicsListEvent;
3534
import com.gcssloop.recyclerview.adapter.multitype.HeaderFooterAdapter;
3635

37-
public class NodeTopicListFragment extends RefreshRecyclerFragment<Topic, GetTopicsListEvent> {
36+
public class NodeTopicListFragment extends SimpleRefreshRecyclerFragment<Topic, GetTopicsListEvent> {
3837
private static String Key_Node_ID = "Key_Node_ID";
3938
private int mNodeId = 0;
4039

@@ -57,24 +56,7 @@ protected void setRecyclerViewAdapter(Context context, RecyclerView recyclerView
5756
adapter.register(Topic.class, new TopicProvider(getContext()));
5857
}
5958

60-
@NonNull @Override protected RecyclerView.LayoutManager getRecyclerViewLayoutManager() {
61-
return new SpeedyLinearLayoutManager(getContext());
62-
}
63-
6459
@NonNull @Override protected String request(int offset, int limit) {
6560
return mDiycode.getTopicsList(null, mNodeId, offset, limit);
6661
}
67-
68-
@Override protected void onRefresh(GetTopicsListEvent event, HeaderFooterAdapter adapter) {
69-
adapter.clearDatas();
70-
adapter.addDatas(event.getBean());
71-
}
72-
73-
@Override protected void onLoadMore(GetTopicsListEvent event, HeaderFooterAdapter adapter) {
74-
adapter.addDatas(event.getBean());
75-
}
76-
77-
@Override protected void onError(GetTopicsListEvent event, String postType) {
78-
toast("加载错误");
79-
}
8062
}

diycode-app/src/main/java/com/gcssloop/diycode/fragment/TopicListFragment.java

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@
2828
import android.support.v7.widget.RecyclerView;
2929
import android.view.View;
3030

31-
import com.gcssloop.diycode.base.app.RefreshRecyclerFragment;
32-
import com.gcssloop.diycode.base.recyclerview.SpeedyLinearLayoutManager;
31+
import com.gcssloop.diycode.base.app.SimpleRefreshRecyclerFragment;
3332
import com.gcssloop.diycode.fragment.provider.TopicProvider;
3433
import com.gcssloop.diycode_sdk.api.topic.bean.Topic;
3534
import com.gcssloop.diycode_sdk.api.topic.event.GetTopicsListEvent;
@@ -38,7 +37,7 @@
3837

3938
import java.util.List;
4039

41-
public class TopicListFragment extends RefreshRecyclerFragment<Topic, GetTopicsListEvent> {
40+
public class TopicListFragment extends SimpleRefreshRecyclerFragment<Topic, GetTopicsListEvent> {
4241

4342
private boolean isFirstLaunch = true;
4443

@@ -71,36 +70,21 @@ public static TopicListFragment newInstance() {
7170
adapter.register(Topic.class, new TopicProvider(getContext()));
7271
}
7372

74-
@NonNull @Override protected RecyclerView.LayoutManager getRecyclerViewLayoutManager() {
75-
return new SpeedyLinearLayoutManager(getContext());
76-
}
77-
7873
@NonNull @Override protected String request(int offset, int limit) {
7974
return mDiycode.getTopicsList(null, null, offset, limit);
8075
}
8176

8277
@Override protected void onRefresh(GetTopicsListEvent event, HeaderFooterAdapter adapter) {
83-
adapter.clearDatas();
84-
adapter.addDatas(event.getBean());
85-
toast("刷新成功");
78+
super.onRefresh(event, adapter);
8679
mDataCache.saveTopicsListObj(adapter.getDatas());
8780
}
8881

8982
@Override protected void onLoadMore(GetTopicsListEvent event, HeaderFooterAdapter adapter) {
9083
// TODO 排除重复数据
91-
adapter.addDatas(event.getBean());
92-
toast("加载更多成功");
84+
super.onLoadMore(event, adapter);
9385
mDataCache.saveTopicsListObj(adapter.getDatas());
9486
}
9587

96-
@Override protected void onError(GetTopicsListEvent event, String postType) {
97-
if (postType.equals(POST_LOAD_MORE)) {
98-
toast("加载更多失败");
99-
} else if (postType.equals(POST_REFRESH)) {
100-
toast("刷新数据失败");
101-
}
102-
}
103-
10488
@Override public void onDestroyView() {
10589
super.onDestroyView();
10690
// 存储 PageIndex

0 commit comments

Comments
 (0)