# scwang90/SmartRefreshLayout

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

Repository: https://github.com/scwang90/SmartRefreshLayout
Canonical: https://ross.abutalabs.com/products/smartrefreshlayout
Homepage: https://segmentfault.com/a/1190000010066071
Language: Java
License: Apache-2.0
License Family: permissive
Topics: refreshlayout, overscroll, pull-to-refresh, pulltorefresh, android, android-ui, header, footer
Last push: 2024-12-04T12:28:17+00:00

## Health v2 (maintenance only)
Score: 34/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 40, longevity 100
- inputs: {"age_days": 3379, "days_push": 637, "days_rel": 653, "gap_med": 0, "n_releases_24m": 2}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 25127, forks 4956 (observed 2026-08-28T04:11:37.863012+00:00)

## What it is
SmartRefreshLayout is an Android pull-to-refresh and load-more layout framework built on ViewGroup, supporting nested view hierarchies, overscroll bounce, and dozens of built-in customizable Headers and Footers. It features smart content recognition, multiple transform modes, Taobao-style second-floor refresh, and AndroidX support.

## Use cases
- add pull-to-refresh to an Android RecyclerView or ListView
- implement pull-up load-more in a scrolling list
- create custom animated refresh headers and footers
- add overscroll bounce effects to any scrollable view
- build a Taobao-style second-floor pull-down page
- support nested scrolling with CoordinatorLayout

## When to choose
- you need a highly extensible refresh layout with many prebuilt header/footer styles
- your app uses nested layouts or CoordinatorLayout and needs reliable refresh behavior
- you want automatic load-more detection on scroll
- you need AndroidX support and broad View compatibility

## When to avoid
- you are not building an Android app
- you only need the simplest refresh indicator and prefer Jetpack's SwipeRefreshLayout
- you are building with Compose and want a declarative solution

## Facets
- artifact type: library
- maturity: stable
- function: ui-components, animation, mobile-framework
- domain: mobile-development, android-tools, frontend
- platform: jvm
- tags: pull-to-refresh, overscroll, refresh-layout, android-ui, header-footer, load-more, android, mobile

## Member repositories
- scwang90/SmartRefreshLayout (main) score 34

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:37.863012+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T16:56:05.896030+00:00, confidence not recorded.
  - readme: https://github.com/scwang90/SmartRefreshLayout (fetched 2026-08-28T04:11:37.863012+00:00, sha 9c206a7b914c)
  - homepage: https://segmentfault.com/a/1190000010066071 (fetched 2026-08-29T07:53:06.504013+00:00, sha d373e5aa5dc0)
  - site_page: https://segmentfault.com/blog/scwang90/about (fetched 2026-08-29T07:53:06.513998+00:00, sha c55643018f81)
- Data as of 2026-08-30T08:39:29.467469+00:00.
