Skip to content

Commit c07bc24

Browse files
authored
Update README.md
1 parent 6578eef commit c07bc24

File tree

1 file changed

+93
-0
lines changed

1 file changed

+93
-0
lines changed

README.md

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,99 @@ app gradle
3333
}
3434
````
3535

36+
## Preview
37+
38+
<img src="/gif/demo1.gif" width="280px"/> <img src="/gif/demo2.gif" width="280px"/>
39+
<img src="/gif/demo3.gif" width="280px"/> <img src="/gif/demo4.gif" width="280px"/>
40+
<img src="/gif/demo5.gif" width="280px"/>
41+
42+
## Feature
43+
44+
**1. 支持网络错误,空数据,正在加载,自定义等状态界面(一行代码切换状态)**
45+
46+
**2. 注入的方式实现下拉刷新,上拉加载(一行代码)且支持自定义下拉刷新样式**
47+
48+
**3. 支持单类型,多类型列表**
49+
50+
**4. 支持"单Activity + 多Fragment","多模块Activity + 多Fragment"**
51+
52+
**5. 支持透明状态栏**
53+
54+
**6. 支持软键盘的状态监听**
55+
56+
**7. 支持软键盘触摸非输入区域自动隐藏**
57+
58+
**8. 实现可拖动的底部提示框**
59+
60+
## Example
61+
62+
````
63+
//效果见图2
64+
@PullToRefresh // 一行代码 注入下拉刷新功能
65+
@PullToLoadMore // 注入上拉加载
66+
public class PullRefreshActivity extends BaseActivity {
67+
// 需要继承 BaseActivity ; 同理 Fragment 继承 BaseFragment ; Dialog 继承 BaseDialog
68+
// 继承的代价太大,后期版本会替换成接口加委托的方式
69+
// 如果本地有维护自己的 Base基类 请注意导包
70+
71+
@Override
72+
protected void initView() {
73+
   //抽象方法,必须被重写 初始化控件 调用的先后顺序 initView -> initData
74+
   }
75+
76+
@Override
77+
protected void initData() {
78+
   //抽象方法,必须被重写 初始化数据
79+
       getToolbarView().setTitle(getResources().getString(R.string.refresh));
80+
getToolbarView().setNavigationIcon(R.mipmap.ic_arrow_back_white_24dp);
81+
getToolbarView().setNavigationOnClickListener(new View.OnClickListener() {
82+
@Override
83+
public void onClick(View v) {
84+
finish();
85+
}
86+
});
87+
88+
       //初始显示空界面(可以配置空界面的图标和文本)
89+
       setState(ViewState.EMPTY, new Object[]{getString(R.string.drag_refresh)});
90+
}
91+
92+
@Override
93+
protected int layoutResId() {
94+
//抽象方法
95+
return 0;
96+
}
97+
98+
@Override
99+
   protected void onRefreshing() { //正在刷新
100+
       super.onRefreshing();
101+
       //rx方式(移除订阅防止泄露)
102+
       postUiThread(2000, new UiSubscriber<Long>() {
103+
@Override
104+
public void onCompleted() {
105+
Toast.makeText(PullRefreshActivity.this, getResources().getString(R.string
106+
.mei_refresh_success), Toast.LENGTH_SHORT).show();
107+
PullRefreshActivity.this.setRefreshing(false);
108+
}
109+
});
110+
}
111+
112+
@Override
113+
   protected void onLoadingMore() { //正在加载更多
114+
       super.onLoadingMore();
115+
postUiThread(2000, new UiSubscriber<Long>() {
116+
@Override
117+
public void onCompleted() {
118+
Toast.makeText(PullRefreshActivity.this, getResources().getString(R.string
119+
.mei_refresh_success), Toast.LENGTH_SHORT).show();
120+
PullRefreshActivity.this.setLoadingMore(false);
121+
}
122+
});
123+
}
124+
}
125+
126+
````
127+
128+
36129
## LICENSE
37130
````
38131
Copyright 2018 文淑

0 commit comments

Comments
 (0)