awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
etsy avatar

etsy/AndroidStaggeredGridArchived

0
View on GitHub↗
4,771 estrellas·1,115 forks·Java·4 vistasgithub.com/etsy/AndroidStaggeredGrid↗

AndroidStaggeredGrid

The AndroidStaggeredGrid library provides a multi-column, masonry-style grid component for Android applications. It arranges items in a staggered layout where rows contain items of varying heights, similar to a Pinterest-style grid. The library supports dynamic column count configuration and includes built-in item interaction handling through tap event callbacks.

Key capabilities include adjustable column counts that can be changed at runtime, separate column configurations for portrait and landscape orientations, automatic scroll position restoration across configuration changes, and an empty state placeholder view when the grid contains no items. The component also supports fixed header and footer views with content area padding.

The implementation follows Android’s adapter-based view recycling pattern to manage memory efficiently with long lists, tracking per-column heights to determine placement of new items.

Features

  • Staggered - Displays items in a multi-column grid where each row contains items of different heights, similar to a masonry layout.
  • Staggered Grid Column Height Trackers - Maintains per-column cumulative height to determine the shortest column for inserting the next item.
  • Item Action Triggers - Triggers a callback when a user taps an item in the staggered grid.
  • Staggered Grid Column Count Updates - Rebuilds the entire child layout when the number of columns changes at runtime, respecting new column widths.
  • Staggered Grid - Overrides AbsListView's layout logic to measure and position children in multiple columns with varying row heights.
  • Masonry Layouts - Arranges items in a Pinterest-style layout with varying column sizes and heights.
  • Orientation-Adaptive Column Counts - Supports dynamic column count configuration and separate layouts for portrait and landscape orientations.
  • Orientation-Specific Column Counts - Renders the staggered grid with separate column counts for portrait and landscape orientations.
  • Staggered Grid Column Counts - Adjusts the number of grid columns at runtime while supporting items of different heights.
  • Orientation Change Restorations - Automatically restores scroll position and layout when the device orientation changes.
  • View Recycling - Reuses off-screen child views via Android's BaseAdapter recycling pattern to manage memory in long lists.
  • Grid Header and Footer Views - Allows adding fixed header and footer views to the grid with padding that applies only to the grid content area.
  • Grid Item Tap Handlers - Registers tap events on grid items and invokes a callback for custom actions.
  • Orientation-Aware Column Counts - Switches between separate portrait and landscape column counts by detecting configuration changes in the layout pass.
  • Empty State Placeholders - Shows a designated empty view by swapping the grid content with it when the adapter data size is zero.
  • Orientation-Adaptive Grid Layouts - Renders a staggered grid with separate column counts for portrait and landscape orientations automatically.
  • Configuration Change Scroll Restorers - Persists and restores the scroll position of a staggered grid across configuration changes like device rotation.
  • Configuration Change Scroll Restorers - Saves and restores the scroll offset and column data across configuration changes using the View's onSaveInstanceState and onRestoreInstanceState.
  • Item Click Delegators - Fires click callbacks by intercepting touch events on child views and dispatching them through OnItemClickListener.
  • Grid Layouts - Grid view supporting multiple columns with varying row sizes.
  • Lists and Grids - Staggered grid layout implementation.
  • User Interface Components - Grid view which supports multiple columns with rows of varying sizes.

Historial de estrellas

Gráfico del historial de estrellas de etsy/androidstaggeredgridGráfico del historial de estrellas de etsy/androidstaggeredgrid

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a AndroidStaggeredGrid

Proyectos open-source similares, clasificados según cuántas características comparten con AndroidStaggeredGrid.
  • chiahsien/chtcollectionviewwaterfalllayoutAvatar de chiahsien

    chiahsien/CHTCollectionViewWaterfallLayout

    4,613Ver en GitHub↗

    CHTCollectionViewWaterfallLayout is a custom layout for iOS collection views designed to organize items of varying heights into a masonry-style grid. It enables the display of dynamic content in multiple columns to optimize screen space and visual flow. The layout allows for specific configuration of column counts and item population directions, including left-to-right, right-to-left, and shortest-column-first rendering patterns. This approach minimizes vertical gaps by placing items into the column with the lowest current height. The system also manages section-level accessories, integratin

    Objective-C
    Ver en GitHub↗4,613
  • flipkart/recyclerlistviewAvatar de Flipkart

    Flipkart/recyclerlistview

    5,440Ver en GitHub↗

    Recyclerlistview is a cross-platform virtualized list component for React Native and web. It functions as a cell-recycling UI library that reuses a small set of off-screen components by updating their data rather than creating new views for every item. The framework includes a dynamic grid layout engine that supports staggered grids and variable item heights, allowing for instant switching between list and grid view modes. The library provides capabilities for virtual scrolling management, including viewability tracking, sticky headers, and scroll position restoration. It also supports infin

    TypeScript
    Ver en GitHub↗5,440
  • nicklockwood/icarouselAvatar de nicklockwood

    nicklockwood/iCarousel

    12,129Ver en GitHub↗

    iCarousel is a data-driven UI library for macOS and iOS used to build interactive three-dimensional scrolling experiences. It functions as a customizable view controller that renders paged content using cylindrical or cover-flow 3D effects. The component is distinguished by its programmable perspective and visual transformation hooks, which allow for the definition of custom 3D styles and bespoke animation effects. Users can adjust viewpoint distance, alpha fading, and foreshortening to control how the vanishing point and depth appear during navigation. The library manages high-performance v

    Objective-C
    Ver en GitHub↗12,129
  • facebook/lithoAvatar de facebook

    facebook/litho

    7,771Ver en GitHub↗

    Litho is an Android declarative UI framework and component library used to build user interfaces through a declarative API and immutable state. It functions as an asynchronous layout engine that maps components to a structured view hierarchy to automate view updates. The framework optimizes rendering performance by computing element positions on background threads to prevent blocking the main UI thread. It further improves efficiency by flattening nested view hierarchies and caching layout results. The system includes capabilities for state reconciliation, component recycling, and the render

    Kotlin
    Ver en GitHub↗7,771
Ver las 30 alternativas a AndroidStaggeredGrid→

Preguntas frecuentes

¿Qué hace etsy/androidstaggeredgrid?

The AndroidStaggeredGrid library provides a multi-column, masonry-style grid component for Android applications. It arranges items in a staggered layout where rows contain items of varying heights, similar to a Pinterest-style grid. The library supports dynamic column count configuration and includes built-in item interaction handling through tap event callbacks.

¿Cuáles son las características principales de etsy/androidstaggeredgrid?

Las características principales de etsy/androidstaggeredgrid son: Staggered, Staggered Grid Column Height Trackers, Item Action Triggers, Staggered Grid Column Count Updates, Staggered Grid, Masonry Layouts, Orientation-Adaptive Column Counts, Orientation-Specific Column Counts.

¿Qué alternativas de código abierto existen para etsy/androidstaggeredgrid?

Las alternativas de código abierto para etsy/androidstaggeredgrid incluyen: chiahsien/chtcollectionviewwaterfalllayout — CHTCollectionViewWaterfallLayout is a custom layout for iOS collection views designed to organize items of varying… flipkart/recyclerlistview — Recyclerlistview is a cross-platform virtualized list component for React Native and web. It functions as a… nicklockwood/icarousel — iCarousel is a data-driven UI library for macOS and iOS used to build interactive three-dimensional scrolling… facebook/litho — Litho is an Android declarative UI framework and component library used to build user interfaces through a declarative… airbnb/epoxy — Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates… yanzhenjie/swiperecyclerview — SwipeRecyclerView is an Android library that extends the standard RecyclerView with swipeable action menus,…