一直都想实现一个下拉页面静止,由上而下出现一个旋转刷新按钮的效果,并有旋转箭头,还有旋转箭头的颜色,旋转的时间设定,其实google已经给我们封装好了,利用android.support.v4.widget.SwipeRefreshLayout包下的,Swipe
RefreshLayout,这个组件,可以轻松实现这种效果。
上代码:
首先写一个布局文件activity_mai.xml
<android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/swipe_container"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ListView
android:id="@+id/listview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="15dp" />
</android.support.v4.widget.SwipeRefreshLayout>
再写一个主mainActivity.java类
private SwipeRefreshLayout mSwipeLayout;
private ListView mLv01;
private ArrayList<String> mData;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setViews();
setDatas();
setAdapter();
}
private void setViews() {
mSwipeLayout=(SwipeRefreshLayout) findViewById(R.id.swipelayout);
mLv01=(ListView) findViewById(R.id.lv_01);
mSwipeLayout.setOnRefreshListener(this);
mSwipeLayout.setColorSchemeResources(android.R.color.holo_blue_light);
}
private void setDatas() {
mData=new ArrayList<String>();
mData.add("My boke:hustyuanyi");
mData.add("My csdn:hustwbyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
mData.add("My boke:hustyuanyi");
}
private void setAdapter() {
mLv01.setAdapter(new ArrayAdapter<>(this,
android.R.layout.simple_list_item_1, mData));
}
@Override
public void onRefresh() {
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
mSwipeLayout.setRefreshing(false);//停止小圆钮旋转
}
}, 1500);
}
}
运行效果成功,这里就不截图了!!这是我的第一篇原创博客!继续努力!!为原创而加油!