Skip to content

Commit 36c2c4b

Browse files
committed
提交代码
1 parent 81ea859 commit 36c2c4b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+1093
-118
lines changed

Android-Rapid-Development-Of-Library/.idea/gradle.xml

Lines changed: 2 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Android-Rapid-Development-Of-Library/.idea/misc.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Android-Rapid-Development-Of-Library/.idea/modules.xml

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Android-Rapid-Development-Of-Library/android_library/android_library.iml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,8 +108,8 @@
108108
<orderEntry type="library" exported="" name="bottom-navigation-bar-1.0.0" level="project" />
109109
<orderEntry type="library" exported="" name="umeng-onlineconfig_v1.0.0" level="project" />
110110
<orderEntry type="library" exported="" name="adapter-rxjava-2.0.0" level="project" />
111-
<orderEntry type="library" exported="" scope="TEST" name="hamcrest-core-1.3" level="project" />
112111
<orderEntry type="library" exported="" name="support-v4-23.3.0" level="project" />
112+
<orderEntry type="library" exported="" scope="TEST" name="hamcrest-core-1.3" level="project" />
113113
<orderEntry type="library" exported="" name="okhttp-3.2.0" level="project" />
114114
<orderEntry type="library" exported="" scope="TEST" name="junit-4.12" level="project" />
115115
<orderEntry type="library" exported="" name="support-annotations-23.3.0" level="project" />

Android-Rapid-Development-Of-Library/android_library/src/main/java/com/lidong/android_ibrary/PullToRefresh/PtrFrameLayout.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import com.lidong.android_ibrary.PullToRefresh.loadmore.ListViewHandler;
2222
import com.lidong.android_ibrary.PullToRefresh.loadmore.OnLoadMoreListener;
2323
import com.lidong.android_ibrary.PullToRefresh.loadmore.OnScrollBottomListener;
24-
import com.lidong.android_ibrary.PullToRefresh.loadmore.RecyclerViewHandler;
24+
import com.lidong.android_ibrary.PullToRefresh.loadmore.RecyclerViewHandler1;
2525
import com.lidong.android_ibrary.PullToRefresh.utils.PtrCLog;
2626
import com.lidong.android_ibrary.R;
2727

@@ -1046,7 +1046,7 @@ public void tryToScrollTo(int to, int duration) {
10461046
private boolean hasInitLoadMoreView = false;
10471047
private ILoadViewMoreFactory loadViewFactory = new DefaultLoadMoreFooter();
10481048
private ListViewHandler listViewHandler = new ListViewHandler();
1049-
private RecyclerViewHandler recyclerViewHandler = new RecyclerViewHandler();
1049+
private RecyclerViewHandler1 recyclerViewHandler = new RecyclerViewHandler1();
10501050
private GridViewHandler gridViewHandler = new GridViewHandler();
10511051

10521052
private View mContentView;

Android-Rapid-Development-Of-Library/android_library/src/main/java/com/lidong/android_ibrary/PullToRefresh/loadmore/RecyclerViewHandler.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public RecyclerViewOnScrollListener(OnScrollBottomListener onScrollBottomListene
5555
}
5656

5757
@Override
58-
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
58+
public void onScrollStateChanged(android.support.v7.widget.RecyclerView recyclerView, int newState) {
5959
if (newState == RecyclerView.SCROLL_STATE_IDLE && isScollBottom(recyclerView)) {
6060
if (onScrollBottomListener != null) {
6161
onScrollBottomListener.onScorllBootom();
@@ -76,7 +76,7 @@ private boolean isCanScollVertically(RecyclerView recyclerView) {
7676
}
7777

7878
@Override
79-
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
79+
public void onScrolled(android.support.v7.widget.RecyclerView recyclerView, int dx, int dy) {
8080

8181
}
8282

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
package com.lidong.android_ibrary.PullToRefresh.loadmore;
2+
3+
import android.content.Context;
4+
import android.support.v4.view.ViewCompat;
5+
import android.support.v7.widget.RecyclerView;
6+
import android.view.LayoutInflater;
7+
import android.view.View;
8+
import android.view.View.OnClickListener;
9+
10+
import com.lidong.android_ibrary.PullToRefresh.recyclerview.RecyclerAdapterWithHF;
11+
12+
public class RecyclerViewHandler1 implements ViewHandler {
13+
14+
@Override
15+
public boolean handleSetAdapter(View contentView, ILoadViewMoreFactory.ILoadMoreView loadMoreView, OnClickListener onClickLoadMoreListener) {
16+
final RecyclerView recyclerView = (RecyclerView) contentView;
17+
boolean hasInit = false;
18+
final RecyclerAdapterWithHF adapter = (RecyclerAdapterWithHF) recyclerView.getAdapter();
19+
if (loadMoreView != null) {
20+
final Context context = recyclerView.getContext().getApplicationContext();
21+
loadMoreView.init(new ILoadViewMoreFactory.FootViewAdder() {
22+
23+
@Override
24+
public View addFootView(int layoutId) {
25+
View view = LayoutInflater.from(context).inflate(layoutId, recyclerView, false);
26+
return addFootView(view);
27+
}
28+
29+
@Override
30+
public View addFootView(View view) {
31+
adapter.addFooter(view);
32+
return view;
33+
}
34+
}, onClickLoadMoreListener);
35+
hasInit = true;
36+
}
37+
return hasInit;
38+
}
39+
40+
@Override
41+
public void setOnScrollBottomListener(View contentView, OnScrollBottomListener onScrollBottomListener) {
42+
final RecyclerView recyclerView = (RecyclerView) contentView;
43+
recyclerView.addOnScrollListener(new RecyclerViewOnScrollListener(onScrollBottomListener));
44+
}
45+
46+
/**
47+
* 滑动监听
48+
*/
49+
private static class RecyclerViewOnScrollListener extends RecyclerView.OnScrollListener {
50+
private OnScrollBottomListener onScrollBottomListener;
51+
52+
public RecyclerViewOnScrollListener(OnScrollBottomListener onScrollBottomListener) {
53+
super();
54+
this.onScrollBottomListener = onScrollBottomListener;
55+
}
56+
57+
@Override
58+
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
59+
if (newState == RecyclerView.SCROLL_STATE_IDLE && isScollBottom(recyclerView)) {
60+
if (onScrollBottomListener != null) {
61+
onScrollBottomListener.onScorllBootom();
62+
}
63+
}
64+
}
65+
66+
private boolean isScollBottom(RecyclerView recyclerView) {
67+
return !isCanScollVertically(recyclerView);
68+
}
69+
70+
private boolean isCanScollVertically(RecyclerView recyclerView) {
71+
if (android.os.Build.VERSION.SDK_INT < 14) {
72+
return ViewCompat.canScrollVertically(recyclerView, 1) || recyclerView.getScrollY() < recyclerView.getHeight();
73+
} else {
74+
return ViewCompat.canScrollVertically(recyclerView, 1);
75+
}
76+
}
77+
78+
@Override
79+
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
80+
81+
}
82+
83+
}
84+
85+
}

Android-Rapid-Development-Of-Library/android_library/src/main/java/com/lidong/android_ibrary/PullToRefresh/loadmore/SwipeRefreshHelper.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public class SwipeRefreshHelper {
2424
private boolean hasInitLoadMoreView = false;
2525
private ILoadViewMoreFactory loadViewFactory = new DefaultLoadMoreFooter();
2626
private ListViewHandler listViewHandler = new ListViewHandler();
27-
private RecyclerViewHandler recyclerViewHandler = new RecyclerViewHandler();
27+
private RecyclerViewHandler1 recyclerViewHandler = new RecyclerViewHandler1();
2828

2929
private OnLoadMoreListener mOnLoadMoreListener;
3030
private ILoadViewMoreFactory.ILoadMoreView mLoadMoreView;

Android-Rapid-Development-Of-Library/android_library/src/main/java/com/lidong/android_ibrary/PullToRefresh/recyclerview/RecyclerAdapterWithHF.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import java.util.ArrayList;
1515
import java.util.List;
1616

17-
public class RecyclerAdapterWithHF extends RecyclerView.Adapter<ViewHolder> {
17+
public class RecyclerAdapterWithHF extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
1818

1919
public static final int TYPE_MANAGER_OTHER = 0;
2020
public static final int TYPE_MANAGER_LINEAR = 1;
@@ -82,12 +82,12 @@ public long getItemIdHF(int position) {
8282
return mAdapter.getItemId(position);
8383
}
8484

85-
public ViewHolder onCreateViewHolderHF(ViewGroup viewGroup, int type) {
85+
public RecyclerView.ViewHolder onCreateViewHolderHF(ViewGroup viewGroup, int type) {
8686
return mAdapter.onCreateViewHolder(viewGroup, type);
8787
}
8888

8989
@Override
90-
public final ViewHolder onCreateViewHolder(ViewGroup viewGroup, int type) {
90+
public final RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int type) {
9191
// if our position is one of our items (this comes from
9292
// getItemViewType(int position) below)
9393
if (type != TYPE_HEADER && type != TYPE_FOOTER) {
@@ -105,7 +105,7 @@ public final ViewHolder onCreateViewHolder(ViewGroup viewGroup, int type) {
105105
}
106106

107107
@Override
108-
public final void onBindViewHolder(final ViewHolder vh, int position) {
108+
public final void onBindViewHolder(final RecyclerView.ViewHolder vh, int position) {
109109
// check what type of view our position is
110110
if (isHeader(position)) {
111111
View v = mHeaders.get(position);
@@ -227,7 +227,7 @@ public void removeFooter(View footer) {
227227
}
228228

229229
// our header/footer RecyclerView.ViewHolder is just a FrameLayout
230-
public static class HeaderFooterViewHolder extends ViewHolder {
230+
public static class HeaderFooterViewHolder extends RecyclerView.ViewHolder {
231231
FrameLayout base;
232232

233233
public HeaderFooterViewHolder(View itemView) {

0 commit comments

Comments
 (0)