30 open-source projects similar to ksoichiro/android-observablescrollview, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Android ObservableScrollView alternative.
StickyListHeaders is an Android sticky header library and RecyclerView extension. It serves as a user interface component for organizing large datasets into categorized sections using headers that pin to the top of the screen during scrolling. The library provides functionality for creating sticky section headers and expandable list sections, allowing grouped sub-items to be collapsed or expanded to simplify navigation. The implementation covers viewport coordinate mapping, z-index management for visual layering, and scroll-position-based pinning. It includes mechanisms for tracking header t
Android-PullToRefresh is an Android view component and library designed to implement pull-to-refresh functionality and end-of-list detection for scrollable views within Android applications. It acts as a custom view that manages the animations and listener triggers necessary to update content via user interaction. The library provides mechanisms for triggering refresh actions when a user pulls from the boundaries of a scrollable view and detecting when a user reaches the bottom of a list to facilitate data pagination. It allows for the customization of the refresh indicator's visual theme and
AndroidSlidingUpPanel is an Android custom view component and sliding panel library used to create draggable overlays that slide up from the bottom of an application screen. It functions as a nested scrolling UI framework that coordinates touch events between a draggable panel and its internal scrollable content. The library distinguishes itself through a parallax effect implementation that shifts background content at different speeds than the foreground panel. It supports the definition of intermediate anchor points to create partial-view states and allows for transition physics customizati
MaterialEditText is an Android UI component library and mobile form input framework used to create text fields that implement Material Design standards. It provides a collection of input components featuring floating labels, error states, and themed visual styles. The library enables the rendering of text fields with animated labels and integrated helper text. It supports the addition of design icons and allows for the customization of colors and typefaces for primary, error, and helper text. The framework includes capabilities for mobile input validation, such as enforcing minimum and maxim
XRecyclerView is an Android list component and extension library that adds pull-to-refresh and infinite scrolling behaviors to a standard RecyclerView. It serves as a scrollable mobile UI element designed to manage data-driven lists with support for dynamic headers and footers. The library provides a gesture-based interface for triggering content reloading via a pull-to-refresh widget and implements a mechanism for triggering data fetch callbacks when a user reaches the bottom of a list to enable infinite scrolling. It further supports dynamic list header management and the implementation of
SlidingMenu is an Android navigation drawer library and UI component library used to create side-panel navigation menus that slide over or push primary content. It functions as an activity wrapper and a set of XML layout components to manage the interaction between main content and navigation layers. The library provides a system for menu aesthetic customization, allowing for the adjustment of scroll scales, fade effects, drop shadows, and touch-responsive areas. It implements a slide-in navigation interface that reveals a hidden side panel through programmatic activity wrapping and XML menu
This is an Android context menu library and UI component toolkit used to create animated, context-sensitive overlay menus that render above the existing view hierarchy. It functions as a navigation framework for implementing interactive menu components and transitions, allowing users to access secondary actions without leaving the primary screen. The library utilizes a fragment-based menu manager to handle the existence and state of menu components by injecting dedicated fragments into the activity window. It provides a set of customizable view-group compositions and a property-based animatio
MPAndroidChart is an Android charting library and data visualization framework that provides a set of reusable view components for rendering statistical data. It enables the display of numerical datasets through various chart types, including line, bar, pie, radar, bubble, and candlestick charts. The library focuses on an interactive graphing workflow, allowing users to explore complex data sets through scaling, panning, and animations. It includes specific support for financial charting to track market trends and price movements, as well as tools for building mobile dashboards.
Android-ViewPagerIndicator is an Android UI component that provides visual paging indicators for ViewPager screens. It consists of a set of widgets, such as dots or titles, that show the current page position and total count within a paginated layout. The library integrates with the Android SDK and Support Library to provide navigation feedback. It synchronizes visual states with a ViewPager to reflect a user's progress as they swipe through content. The project includes options for indicator styling customization via themes, layout attributes, or programmatic method calls.
material-dialogs is a Kotlin UI component library that provides a collection of modal dialogs and bottom sheets for Android applications. It is designed to implement user interface elements that follow Material Design standards. The library provides specialized modal interfaces for selecting calendar dates, clock times, and specific color values. It also includes system chooser integrations for selecting files and directories from local storage. Beyond pickers, the library covers a broader range of interaction components including text input dialogs, modal alerts with action buttons, and bot
This project is a native Android widget toolkit that provides a collection of standardized interface elements for mobile application development. It serves as a comprehensive implementation of the Material Design language, offering ready-to-use widgets and layouts designed to ensure consistent visual and interactive patterns across an application. The library distinguishes itself by integrating directly with the platform view system, allowing developers to maintain a uniform look and feel across different screens. It utilizes a centralized theme object to resolve visual properties and support
Android scrollable tabs
ahbottomnavigation is an Android UI component library that provides a view-based bottom navigation bar for implementing tabbed interfaces. It functions as a navigation framework for managing active tab states and triggering application logic through user interactions with a menu of three to five items. The library includes a dynamic notification badge system that renders visual overlays on navigation items to alert users to pending updates. It also features an interactive view manager that coordinates navigation bar visibility and transitions based on real-time scroll events. The component c
elevator.js is a lightweight JavaScript library that adds a playful, elevator-themed scroll-to-top button to a webpage. When clicked, it smoothly animates the page back to the top while playing a looping elevator music track in the background, masking the transition and adding a whimsical touch to the user experience. The library goes beyond a simple scroll-to-top button by offering configurable scroll duration, the ability to scroll to any specified DOM element with optional vertical padding, and callback hooks that fire user-defined functions at the start and end of the animation. This allo
iscroll is a JavaScript smooth scrolling library and web interaction framework. It provides a 2D web panning controller and a CSS transform zoom engine to manage inertial scrolling, panning, and zooming for web elements across different devices. The project enables the implementation of custom scrollbar interfaces and navigation maps that track the current viewport position. It supports the creation of interactive web carousels with element snapping, web parallax effects, and content scaling via pinch-to-zoom or mouse-wheel inputs. The library covers a broad range of interaction capabilities
WilliamChart is an Android data visualization library and toolkit used to render interactive charts and graphs within Android applications. It functions as a UI component library for integrating data-driven dashboards and metrics into Android layouts. The library includes a specialized component for representing proportional categorical data as donut charts, which are circular charts with hollow centers. It provides a drawing engine that uses low-level APIs to map numerical data to pixel coordinates on the screen.
Side-Menu.Android is a reusable UI component for Android applications that provides a slide-out navigation drawer. It is designed to help developers organize application sections and user options into a structured, hidden panel that maintains a clean interface for the primary content area. The component distinguishes itself through its visual presentation, which follows Material Design guidelines to ensure a consistent and intuitive user experience. It features a data-driven menu hierarchy that allows for logical grouping of navigation items, and it incorporates fluid circular reveal animatio
XUI is a native Android UI framework and component library designed for building application interfaces. It provides a comprehensive suite of native layouts, input fields, and navigation elements, supported by a tiered theme management system for defining global visual attributes and responsive styles. The framework distinguishes itself through a specialized set of custom views and interaction toolkits, including high-performance calendars, data visualization rendering, and a variety of stylized buttons with integrated timers and visual effects. It also includes integrated media processing ca
UltraViewPager is an Android UI component and ViewPager extension that provides a library of page transition animations and an infinite paging controller for mobile screens. It functions as a reusable interface element for rendering paging containers with custom dimensions and aspect ratios. The project implements circular paging navigation that cycles back to the first page after the final screen is reached, creating a continuous loop. It also includes a timer-driven mechanism for automated content rotation and a coordinate-based engine to interpolate view positions and alpha values during p
CircleIndicator is a custom Android UI component that functions as a circular page progress indicator. It provides a graphical interface element that represents completion or progress through a circular arc. The component is designed to track a user's position within a sequence of pages, such as during onboarding flow navigation or linear screen transitions. It visualizes progress through a set of screens to provide feedback during mobile app navigation.
SmartTabLayout is an Android user interface navigation component that synchronizes a tabbed navigation strip with the scroll position of a ViewPager. It functions as a layout system that maps page scroll offsets to active tab indicators, providing a visual marker that offers continuous feedback as users swipe through paginated content. The component utilizes an adapter-based system to bind fragment-based page sets to dynamic tab labels. It allows for the replacement of standard tab appearances with custom layouts or user-defined views while maintaining synchronization with the page viewer. T
MaterialDesignLibrary is an Android Material Design UI library and cross-version framework. It provides a collection of pre-built interface controls and a compatibility layer that enables modern design patterns on older Android devices starting from version 2.2. The project focuses on bringing updated design standards to legacy Android versions to ensure a consistent user experience. This is achieved through a compatibility layer that implements modern interface elements without sacrificing visual quality on outdated operating system releases. The library includes a variety of functional com
AndroidPicker is a collection of customizable UI selection interfaces for Android applications. The library provides specialized components for selecting geographic addresses, calendar dates, clock times, local files, and numeric values. The library features a wheel-based input mechanism for choosing measurements and a hierarchical selection system for mapping provinces, cities, and districts. It includes cascading selection logic where choices in one picker dynamically filter available options in subsequent levels. The capability surface covers date and time picking through grid views, loca
cardslib is an Android UI component library and card layout framework. It provides a set of specialized adapters and views designed as an extension for high-performance card rendering within recycling lists. The library distinguishes itself through a reorderable list implementation that supports drag-and-drop item rearrangement and nested content hierarchies. It also includes an interaction system for managing directional swipe constraints and a customizable undo action notification bar. The framework covers a broad range of card-based interface capabilities, including the composition of vis
Android-Bootstrap is a framework for Android application design that implements the Bootstrap design language and layout principles. It consists of a UI component library, a brand theme engine, and an icon integration toolkit to build mobile interfaces with a consistent visual theme. The framework utilizes a customizable interface to define global visual styles, colors, and typography across all application components. It includes a specialized system for mapping typeface files and unicode characters to scalable graphics within the interface. The project provides a collection of styled widge
This project is a community-driven directory of open-source Android libraries focused on user interface development. It serves as a centralized knowledge base that organizes high-quality third-party tools into a structured, categorical taxonomy to assist developers in discovering reliable solutions for mobile application design. The repository distinguishes itself by providing a version-agnostic index that links directly to external project resources, bypassing the need for complex dependency management. To facilitate rapid evaluation, each entry is paired with visual asset indexing, includin
uCrop is an Android library designed for cropping, rotating, and scaling images within mobile applications. It provides a reusable interface component that allows users to manipulate photos through touch gestures, enabling precise control over visual composition and aspect ratios. The library distinguishes itself by offering extensive customization of the editing interface, allowing developers to adjust colors, frame shapes, and widget visibility to align with specific application design languages. It handles image processing tasks by managing quality, compression formats, and output dimensio
This project is a curated collection of Android development code snippets, implementation patterns, and technical guides designed to assist in building and maintaining mobile applications. It serves as a reference for standard mobile architecture, providing structured approaches to common development requirements and system integration tasks. The repository distinguishes itself by offering specific technical strategies for managing application lifecycles, optimizing memory usage, and ensuring interface responsiveness in resource-constrained environments. It provides programmatic techniques fo
QMUI_Android is a comprehensive design system framework and UI component library for Android applications. It provides a collection of reusable interface building blocks and styling tools designed to help developers maintain a unified visual language across mobile screens. The project distinguishes itself through an attribute-driven theme system that centralizes visual properties into a global configuration object, allowing styling changes to propagate across all components at runtime. By utilizing custom view inheritance and dynamic attribute resolution, the library ensures that interface el
This project is a reference library for Android development, providing source code and sample applications that demonstrate architectural patterns and the implementation of core API capabilities. It serves as a collection of reference implementations for data management, system integration, and user interface component development. The library provides specific examples for managing hardware interfaces, background tasks, and inter-process communication. It includes a gallery of user interface components and patterns for implementing accessibility features and system-level font scaling. The p