# bingoogolapple/bgarefreshlayout-android

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/bingoogolapple-bgarefreshlayout-android).**

4,287 stars · 994 forks · Java

## Links

- GitHub: https://github.com/bingoogolapple/BGARefreshLayout-Android
- awesome-repositories: https://awesome-repositories.com/repository/bingoogolapple-bgarefreshlayout-android.md

## Topics

`refreshlayout`

## Description

BGARefreshLayout-Android is a layout library for Android applications that implements pull-to-refresh and pull-up-to-load-more patterns. It serves as a specialized view container and list loading framework designed to manage loading indicators and status text during data fetching operations.

The library distinguishes itself by supporting a customizable view hierarchy that allows for the integration of a dedicated advertisement space at the top of the layout, positioned above the scrollable content. It provides a view holder system that enables the creation of bespoke visual effects and animations for both refresh and load-more actions.

The project covers functional workflows for intercepting touch events and tracking scroll states to trigger content updates. It utilizes event-driven status updates to notify applications when the layout transitions between refreshing and loading states.

## Tags

### User Interface & Experience

- [Pull-to-Refresh Frameworks](https://awesome-repositories.com/f/user-interface-experience/pull-to-refresh-components/pull-to-refresh-frameworks.md) — Implements a comprehensive framework for pull-to-refresh and pull-up-to-load-more behaviors in Android apps.
- [Load-More Indicators](https://awesome-repositories.com/f/user-interface-experience/progress-indicators/pagination-indicators/load-more-indicators.md) — Provides a workflow and visual indicators for loading additional paginated data at the bottom of a list.
- [Pull-Up Loading Indicators](https://awesome-repositories.com/f/user-interface-experience/pull-up-loading-indicators.md) — Implements the UI components and logic to trigger and display loading indicators when pulling up at the end of a list. ([source](https://github.com/bingoogolapple/bgarefreshlayout-android#readme))
- [Touch Event Interception](https://awesome-repositories.com/f/user-interface-experience/touch-event-interception.md) — Intercepts scroll events within the parent container to determine when a pull-to-refresh or load-more action is triggered.
- [Layout Positioning Utilities](https://awesome-repositories.com/f/user-interface-experience/layout-positioning-utilities.md) — Manages the spatial positioning and visibility of headers and footers based on the user's scroll state.
- [Refresh Indicator Customizations](https://awesome-repositories.com/f/user-interface-experience/progress-steps/refresh-indicator-customizations.md) — Supports custom visual modifications for indicators used during both refresh and load-more operations. ([source](https://github.com/bingoogolapple/bgarefreshlayout-android#readme))
- [View Hierarchy Injections](https://awesome-repositories.com/f/user-interface-experience/view-hierarchy-injections.md) — Provides a mechanism to inject a dedicated advertisement or header area into the native Android layout tree.

### Mobile Development

- [Android List Frameworks](https://awesome-repositories.com/f/mobile-development/android-list-frameworks.md) — Serves as a framework for managing loading indicators and status text during data fetching in Android lists.
- [Custom Android Views](https://awesome-repositories.com/f/mobile-development/custom-android-views.md) — Implements a specialized view container that extends Android's View class to support custom headers and refresh behaviors.
- [Custom Animation Views](https://awesome-repositories.com/f/mobile-development/custom-android-views/custom-animation-views.md) — Allows for the creation of bespoke visual effects and animations for refreshable list components.

### Data & Databases

- [In-App Banner Advertisements](https://awesome-repositories.com/f/data-databases/advertising-analytics/in-app-banner-advertisements.md) — Supports a configurable area at the top of the layout specifically for integrating in-app banner advertisements.

### Part of an Awesome List

- [Pull to Refresh](https://awesome-repositories.com/f/awesome-lists/devtools/pull-to-refresh.md) — 多种下拉刷新和上拉加载插件
