php swiper 下拉刷新,SwipeRefreshLayout的使用(下拉刷新)
在布局中導入
SwipeRefreshLayout在V4包下,作為一個布局,可以在內部嵌套如listview,recycleView等,這里作為例子嵌套了一個listview
android:id="@+id/swipe_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent">
android:id="@+id/list_view"
android:layout_width="match_parent"
android:layout_height="match_parent">
在代碼中使用
public class SwipeActivity extends AppCompatActivity implements SwipeRefreshLayout.OnRefreshListener {
//聲明控件
private SwipeRefreshLayout swiper;
private ListView mListView;
//聲明并初始化ListView的數據源
private List list = new ArrayList<>();
//聲明ListView的適配器
private ArrayAdapter adapter;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.swipe_layout);
//初始化SwipeRefreshLayout
swiper = (SwipeRefreshLayout) findViewById(R.id.swipe_refresh);
//為SwipeRefreshLayout設置監聽事件
swiper.setOnRefreshListener(this);
//為SwipeRefreshLayout設置刷新時的顏色變化,最多可以設置4種
swiper.setColorSchemeResources(android.R.color.holo_blue_bright,
android.R.color.holo_green_light,
android.R.color.holo_orange_light,
android.R.color.holo_red_light);
//初始化ListView
mListView = (ListView) findViewById(R.id.list_view);
//初始化適配器
adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, getData());
//設置適配器
mListView.setAdapter(adapter);
}
//增加數據
private List getData() {
list.add("hello");
list.add("this is johnsonHou");
list.add("an android rookie developer");
list.add("love android");
return list;
}
//實現OnRefreshListener 的onRefresh()方法
@Override
public void onRefresh() {
//刷新
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
//結束后停止刷新
swiper.setRefreshing(false);
}
}, 3000);
// 一般會從網絡獲取數據
// new Handler().post(new Runnable() {
// @Override
// public void run() {
// 獲取數據
// refreshData();
// swiper.setRefreshing(false);
// }
// });
}
//簡單示例,手動添加數據
private void refreshData() {
list.add(0, String.valueOf((int) (Math.random() * 10)));
adapter.notifyDataSetChanged();
}
}
效果圖如下
SwipeRefresh.gif
總結
以上是生活随笔為你收集整理的php swiper 下拉刷新,SwipeRefreshLayout的使用(下拉刷新)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php manual 反射,Larave
- 下一篇: redis php 持久化,详解Redi