文档章节

简单实现,下拉刷新,官方控件

yolinfeng
 yolinfeng
发布于 2015/02/24 11:22
字数 282
阅读 38
收藏 0

也许之前下拉刷新你可能会用到一些第三方开源库,如PullToRefresh, ActionBar-PullToRefresh等,但现在已经有官方的组件了---SwipeRefreshLayoutSwipeRefreshLayoutGooglesupport v4 19.1版本的library更新的一个下拉刷新组件,使用起来很方便,可以很方便的实现Google Now的刷新效果。使用官方自带的控件能够保证通用性以及风格。SwipeRefreshLayout是继承ViewGroup,来实现下拉刷新,它可以包含其他组件,使用过后感觉很简单。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="com.example.myapplication2.app.MainActivity">
 
    <android.support.v4.widget.SwipeRefreshLayout
        android:id="@+id/swip"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <ListView
            android:id="@+id/listview"
            android:layout_width="match_parent"
            android:layout_height="match_parent">
 
            </ListView>
        </android.support.v4.widget.SwipeRefreshLayout>
 
</RelativeLayout>
 
 
 
 
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.ActionBarActivity;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v4.widget.SwipeRefreshLayout.OnRefreshListener;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
 
 
public class MainActivity extends ActionBarActivity implements OnRefreshListener{
 
    private SwipeRefreshLayout swipeRefreshLayout;
    Handler handler = new Handler(){
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            swipeRefreshLayout.setRefreshing(false);
        }
    };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        swipeRefreshLayout = (SwipeRefreshLayout)findViewById(R.id.swip);
        swipeRefreshLayout.setOnRefreshListener(this);
        swipeRefreshLayout.setColorScheme(android.R.color.holo_blue_bright,
                android.R.color.holo_green_light,
                android.R.color.holo_orange_light,
                android.R.color.holo_red_light);
 
    }
 
    @Override
    public void onRefresh() {
        handler.sendEmptyMessageDelayed(1, 5000);
    }
}

© 著作权归作者所有

共有 人打赏支持
yolinfeng
粉丝 12
博文 196
码字总数 11946
作品 0
珠海
架构师
十分钟搭建主流框架_下拉/上拉刷新数据(OC)

本节主题(网络部分-下拉/上拉刷新) 源码地址在文章末尾 达成效果 前言 经过十分钟搭建主流框架简单的网络部分(OC)的介绍,相信你已经实现了基本的联网获取数据,但只是粗糙的获取了固定的数...

hejunbinlan
2015/11/13
0
0
SwipeRefreshLayout简单说明

SwipeRefreshLayout是谷歌官方的下拉刷新控件,代码在V4包中。 使用SwipeRefreshLayout有几个要注意的: SwipeRefreshLayout和ScrollView一样只能有一个字控件。 setOnRefreshListener设置监...

oschina2136
2015/08/24
0
0
Android自己写一个高度定制化UI的下拉刷新控件,使用十分简单方便,GitHub最火的开源控件之一

转载自这个控件的git hub地址:https://github.com/xubinhong/PullToRefreshLayout 如果你需要在3分钟之内集成一个下拉刷新控件并且把他的UI随心所欲的定制,那么你来对地方了。 先上效果图 ...

qq_36523667
04/18
0
0
一起撸个朋友圈吧(step1) ListView(中)篇

项目地址:https://github.com/razerdp/FriendCircle 一起撸个朋友圈吧这是本文所处文集,所有更新都会在这个文集里面哦,欢迎关注 上篇链接:http://www.jianshu.com/p/7fa237cfddbb 下篇链...

WeiChaoFeng
2017/12/13
0
0
侵入式设计和非侵入式设计的理解

比如Android的RecyclerView做下拉刷新 如果你从Adapter内部入手去制作,这叫侵入式 如果像官方的SwipeRefreshLayout一样,这叫非侵入式 官方的下拉刷新就很神奇 他只需要在RecyclerView外面套...

qq_36523667
04/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Shell | linux安装包不用选择Y/N的方法

apt-get install -y packageOR echo "y" | sudo apt-get install package

云迹
6分钟前
0
0
Hadoop的大数据生态圈

基于Hadoop的大数据的产品圈 大数据产品的一句话概括 Apache Hadoop: 是Apache开源组织的一个分布式计算开源框架,提供了一个分布式文件系统子项目(HDFS)和支持MapReduce分布式计算的软件架...

zimingforever
20分钟前
1
0
八大包装类型的equals方法

先看其中一个源码 结论:八大包装类型的equals方法都是先判断类型是否相同,不相同则是false,相同则判断值是否相等 注意:包装类型不能直接用==来等值比较,否则编译报错,但是数值的基本类型...

xuklc
45分钟前
1
0
NoSQL , Memcached介绍

什么是NoSQL 非关系型数据库就是NoSQL,关系型数据库代表MySQL 对于关系型数据库来说,是需要把数据存储到库、表、行、字段里,查询的时候根据条件一行一行地去匹配,当量非常大的时候就很耗...

TaoXu
昨天
0
0
890. Find and Replace Pattern - LeetCode

Question 890. Find and Replace Pattern Solution 题目大意:从字符串数组中找到类型匹配的如xyy,xxx 思路: 举例:words = ["abc","deq","mee","aqq","dkd","ccc"], pattern = "abb"abc ......

yysue
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部