刷新加载库

Android下拉刷新与加载更多库:SmartRefreshLayout实战指南 SmartRefreshLayout是Android平台上的一个功能强大的下拉刷新库,它为开发者提供了一套轻量级且易于集成的刷新组件。该库设计思想来源于Material Design,支持自定义下拉头和上拉脚,具有丰富的配置选项和动画效果,能够满足多样化的用户交互需求。SmartRefreshLayout提供了一系列的方法来进行下拉刷新视图的配置和自定义。开发者可以根据需要调整刷新提示头部的样式、颜色、动画以及行为。例如,如果想要自定义一个下拉刷新时的头部视图,可以使用以下方式:在这段代码中, 阅读详情

今天项目不忙了,决定搜寻一个好一点的刷新库,以前都是用谷歌自带的SwipeRefreshLayout来刷新,用的久了,感觉没什么新鲜感了,功夫不负有心人,发现了一个,而且star数也很高,就按照说明,写了个Demo试了一下。这里试的是传统风格的下拉刷新和上拉加载,当然,库里面有很多风格的。具体可以去细看,地址:https://github.com/scwang90/SmartRefreshLayout,不得不说,这个库确实好犀利,很多属性也可以自定义。

xml声明:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    tools:context="com.thtj.demo.MainActivity">
    <com.scwang.smartrefresh.layout.SmartRefreshLayout
        android:id="@+id/smartRefreshLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <com.scwang.smartrefresh.layout.header.ClassicsHeader
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:srlTextSizeTitle="14sp"
            app:srlPrimaryColor="#444444"
            app:srlAccentColor="#ffffff"/>
        <ListView
            android:id="@+id/listView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>
        <com.scwang.smartrefresh.layout.footer.ClassicsFooter
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:srlTextSizeTitle="14sp"
            app:srlPrimaryColor="#444444"
            app:srlAccentColor="#ffffff"/>
    </com.scwang.smartrefresh.layout.SmartRefreshLayout>
</LinearLayout>

 app:srlTextSizeTitle="14sp"//字体大小
 app:srlPrimaryColor="#444444"//主题背景
 app:srlAccentColor="#ffffff"//字体颜色

MainActivity:

public class MainActivity extends Activity {
    private ListView listView;
    private SmartRefreshLayout smartRefreshLayout;
    private List<String> dataList;
    private ArrayAdapter adapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
        dataList = new ArrayList<>();
        initData();
        smartRefreshLayout.setOnRefreshListener(new OnRefreshListener() {
            @Override
            public void onRefresh(RefreshLayout refreshlayout) {
                dataList.clear();
                initData();
                refreshlayout.finishRefresh(true);//刷新完成调用
            }
        });
        smartRefreshLayout.setOnLoadmoreListener(new OnLoadmoreListener() {
            @Override
            public void onLoadmore(RefreshLayout refreshlayout) {
                List<String> list = new ArrayList<>();
                for (int i = 0; i < 5; i++) {
                    list.add("新增数据" + i);
                }
                dataList.addAll(list);
                adapter.notifyDataSetChanged();
                smartRefreshLayout.finishLoadmore(true);//加载完毕调用
            }
        });
    }

    private void initData() {
        for (int i = 0; i < 20; i++) {
            dataList.add("数据" + i);
        }
        adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, dataList);
        listView.setAdapter(adapter);
    }

    private void initView() {
        listView = findViewById(R.id.listView);
        smartRefreshLayout = findViewById(R.id.smartRefreshLayout);
        smartRefreshLayout.setEnableAutoLoadmore(false);//关闭滑到底部自动加载更多(默认自动加载更多)
        smartRefreshLayout.setEnableLoadMoreWhenContentNotFull(false);//内容不满一页时禁止上拉加载更多功能
        smartRefreshLayout.setDisableContentWhenRefresh(true);//禁止在刷新过程中对列表的任何操作
        smartRefreshLayout.setDisableContentWhenLoading(true);//禁止在加载过程中对列表的任何操作
    }
}

简单易懂,不解释,风格犀利~

SmartRefreshLayout-release.zip 下拉刷新、上拉加载、二级刷新、淘宝二楼、RefreshLayout、OverScroll,Android智能下拉刷新框架,支持越界回弹、越界拖动,具有极强的扩展性,集成了几十种炫酷的Header和 Footer。 立即下载

相关推荐

termux 安装 rockylinux

往找最新的文件目录,选择ARM版本的image。或者直接查看目录或者国内阿里云镜像,按照cpu架构(安卓9手机一般是aarch64arm最新架构),获取镜像地址,以及checksum里的SHA256信息更新到以下rocky9.sh脚本,如果不需要直接使用即可。

欢迎来到别往的博客 984

SmartRefreshLayout 方法解读以及使用

refreshLayout.setEnableAutoLoadMore(false);//使上拉加载具有弹性效果 refreshLayout.setEnableOverScrollDrag(false);//禁止越界拖动(1.0.4以上版本) refreshLayout.setEnableOverScrollBounce(false);//关闭越界回弹功能 app:srlEnableFoote...

李建国的博客 9214

用scons编译STM32F103工程

想用vscode来实现代码的编辑与调试代码,原先这个工程是用STM32CUBEIDE建立的,参照STM32CUBEIDE的编译过程,编写了下面的scons脚本,scons是初次了解,既然是python脚本,那么会什么就怎么写吧。 import os import sys import glob cross_compiler_prefix = 'arm-none-eabi-' CC = cross_compiler_prefix+'gcc' CXX = cross_compiler_prefix+'g+

cylinc的专栏 1623

android智能刷新SmartRefreshLayout框架

智能刷新框架SmartRefreshLayout

leveretz的博客 7241

SQL注入绕过information_schema:实战技法与替代路径详解

SQL注入是Web安全领域的核心漏洞类型,其原理是通过构造恶意SQL语句,干扰应用程序与数据库的正常交互逻辑,从而窃取或篡改数据。在渗透测试与CTF竞赛中,绕过常见防护措施是提升技术能力的关键。当标准的信息收集方式受阻时,例如无法访问information_schema数据库,攻击者需要掌握替代的元数据获取方法。这些技术价值在于模拟真实环境中日益严密的防御体系,锻炼在受限条件下的系统性信息收集思维。典型的应用场景包括存在WAF过滤、权限限制或编码干扰的实战环境。本文将围绕SQL注入这一核心,深入探讨如何利用

weixin_33980459的博客 430

VS2015+C++实战:手把手教你用海康MVS里的Demo搞定多相机同步采图与保存

本文详细解析了在VS2015+C++环境下,利用海康威视MVS工业相机SDK实现多相机同步采图与保存的全流程。从环境准备、SDK选择到多相机初始化、同步采图方案,再到异常处理与性能优化,提供了实战技巧和代码示例,帮助开发者快速掌握工业相机二次开发的核心技术。

weixin_29170327的博客 281

Android 下拉刷新框架[SmartRefreshLayout

官网:https://gitee.com/scwang90/SmartRefreshLayout 非常强大的刷新框架,有很多样式可选,这里简单使用经典的 第一步: 添加依赖 implementation 'com.scwang.smart:refresh-layout-kernel:2.0.3' implementation 'com.scwang.smart:refresh-header-classics:2.0.3' implementation 'com.scwang.smart:refresh

z18223345669的博客 4984

[misc]智能车协议分析:2020网鼎杯青龙组misc_teslaaaaa_wp

[misc]智能车协议分析:2020网鼎杯青龙组misc_teslaaaaa_wp 文章目录[misc]智能车协议分析:2020网鼎杯青龙组misc_teslaaaaa_wp分析log文件格式分析协议组成UDS网络传输层UDS统一诊断服务协议分析文件提取文件逆向flag计算参考链接: teslaaaaa这道题是青龙组被做出来的题目中做出来人数最少的,直到比赛快结束才有第一个人做出来,怎么说,难并不是因为脑洞大,讲道理这道题是一道好题,我当时也是肝了一天没做出来,我倒是把文件提取出来了,奈何比赛时间已经接近尾

Breeze的博客 1万+

android 首页请求数据完整逻辑,Android 网路请求列表返回逻辑处理

一、前言:我们在网络请求时,总有分页加载等,处理业务逻辑也是比较混乱的,容易出现各种Bug,下面我这种模式用了很久,记录一下,有任何问题,欢迎指正。二、方式一:采用 SmartRefreshLayout框架,下拉刷新采用autoRefresh(),上拉加载更多是根据addOnScrollListener()自定义写的。注意:什么时候加载更多,完全可以自定义。(本文是滑动到数据一半,开始加载更多。)...

weixin_39582737的博客 363

Orcad 17.2导出PDF原理图终极指南:从Ghostscript安装到带属性书签配置

本文是Orcad 17.2导出高质量PDF原理图的终极指南。针对导出过程中常见的Ghostscript安装报错、软件卡死及版本兼容性问题,提供了详细的解决方案。重点推荐使用Ghostscript 9.53.3版本以确保最佳兼容性,并深入讲解了从安装配置、内存优化到高级书签属性设置的完整流程,帮助硬件工程师稳定、高效地生成带完整器件属性和导航书签的PDF文档。

weixin_29281915的博客 396

RV1126 ISP调参实战:3A算法参数调节的7个技巧

││ │ DEMOSAIC (去马赛克) │ ││ │ GAMMA (Gamma 校正) │ ││ │ DPC (坏点校正) │ ││。

小灰灰的博客 663

SmartRefreshLayout基本使用

SmartRefreshLayout 的 github地址: https://github.com/scwang90/SmartRefreshLayout介绍一个智能下拉刷新、上拉加载框架, 扩展性强

Master-D的博客 1085

基于STM32L4XX、HAL库的 ATGM336H GPS定位模块驱动程序设计

/ 转换为km/h。// 定位状态: 0=无效, 1=GPS定位, 2=差分定位。// GPS解析数据。支持GPS/BeiDou/GLONASS/Galileo/QZSS多系统联合定位。// 回调函数(需要在HAL_UART_RxCpltCallback中调用)// 地面速度(km/h)// 海拔高度(m)

zhusl6688的博客 794

探索SHSwipeRefreshLayout:高效的下拉刷新与上拉加载库

探索SHSwipeRefreshLayout:高效的下拉刷新与上拉加载库 在移动应用开发中,下拉刷新和上拉加载是提升用户体验的关键功能。今天,我们将介绍一个强大的开源项目——SHSwipeRefreshLayout,它不仅支持这些基本功能,还提供了丰富的自定义选项和灵活的技术支持。 项目介绍 SHSwipeRefreshLayout是由miomin开发的一个Android库,旨在简化下拉刷新和上拉...

gitblog_00965的博客 964

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

推荐开源项目:QRefreshLayout - 刷新加载库

推荐开源项目:QRefreshLayout - 刷新加载库 项目简介 是一个强大的Android刷新和加载更多的库,由开发者ZhangXQ贡献并维护。它旨在为你的应用提供流畅、易于集成的上拉刷新和下拉加载功能,适用于多种复杂的布局场景,如列表、网格、瀑布流等。 技术分析 QRefreshLayout的核心在于其高度可定制化的设计。它基于Android的CoordinatorLayout和Neste...

gitblog_00005的博客 439

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Android 一个强大的刷新库(下拉刷新、上拉加载更多)

下拉刷新、上拉加载、二级刷新、淘宝二楼、RefreshLayout、OverScroll,Android智能下拉刷新框架,支持越界回弹、越界拖动,具有极强的扩展性,集成了几十种炫酷的Header和 Footer。github地址

追梦的鱼儿 1610

flutter版的下拉刷新,上拉加载库flutter_pulltorefresh

直接放上github地址: https://github.com/peng8350/flutter_pulltorefresh/blob/master/README_CN.md 只能说超级好用,可定制性高,里面存在的bug少,用这个感觉都可以不用SingleChildScrollView这个控件了。 用法: dependencies: pull_to_refresh: ^1.5.0...

徐代龙的技术专栏 8832

Flutter 库:强大的下拉刷新上拉加载框架——EasyRefresh

wakelock 是允许您保持设备屏幕唤醒的插件,即防止屏幕睡眠。该插件允许您启用和切换屏幕唤醒锁,从而防止屏幕自动关闭。从本质上讲,这使您可以保持设备处于唤醒状态,即防止设备进入睡眠状态。

訾博(ZiBo)的博客 7872

android下拉刷新和上拉加载的一个简单库

介绍一个android下拉刷新、上拉加载的库: https://github.com/chrisbanes/Android-PullToRefresh 使用方式,创建好一个Android项目,导入library库即可: 布局文件: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

lyhDream的专栏 1105

android使用SmartRefreshLayout库实现下拉刷新和上拉加载

android使用SmartRefreshLayout库实现下拉刷新和上拉加载

热爱编程,热爱技术 466

better-scroll库实现上拉加载下拉刷新

实现上拉加载下拉下拉刷新

weixin_47392228的博客 583

RecyclerView刷新加载库-SRecyclerView

前言 最近在使用前段时间 “业余时间" 项目中封装的 RecyclerView 时,发现了好几个问题,比如:刷新头部和加载尾部耦合性太高,要是以后想换个刷新头部或加载尾部,必然改动很大,不利于扩展,刷新手势处理和加载更多的逻辑也有点小问题,于是乎,换了一种思路重新封装了一下,核心思想就是:该控件的一些配置,比如刷新头部和加载尾部,刷新头的高度,动画时间等等,都方便扩展和重设置,而且可以很...

小河的博客 2258

复杂type页面封装库,支持多种状态切换和下拉刷新上拉加载 ...

目录介绍 1.复杂页面库介绍 2.本库优势亮点 2.1 支持多种状态切换管理 2.2 支持添加多个header和footer 2.3 支持侧滑功能和拖拽移动 2.4 其他亮点介绍 3.如何使用介绍 3.1 最基础的使用 3.2 添加下拉刷新和加载更多监听 3.3 添加header和footer操作 3.4 设置数据和刷新 3.5 设置ada...

weixin_34405925的博客 267

推荐开源项目:CircleRecyclerView —— 环形布局的刷新与加载库

推荐开源项目:CircleRecyclerView —— 环形布局的刷新与加载库 项目简介 在移动应用开发中,创新的界面设计总能吸引用户的注意力。 是一个专为 Android 设计的开源库,它实现了环形布局,用于显示数据列表,并支持上拉加载和下拉刷新功能。这个项目由开发者 kHRYSTAL 创建并维护,可以轻松集成到你的 Android 应用中,为用户提供独特的交互体验。 技术分析 CircleR...

gitblog_00039的博客 725

iOS常用下拉刷新上拉加载库MJRefresh使用说明

简介 项目主页地址:MJRefresh 项目下载地址:点击下载 适用范围:可用于常见控件 UIScrollView、UITableView、UICollectionView、UIWebView 实现上拉刷新和下拉加载的效果。 ARC iOS&gt;=6.0 iPhone \ iPad screen anyway 加入项目方式: CocoaPods安装:pod 'MJRefresh' ...

sinat_32283541的博客 2724
上一篇: 使用阿里云实现简单的直播
下一篇: APP本地数据库简单操作和升级(Android/Flutter)
尘彦
博客等级 码龄11年 92粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尘彦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值