30 open-source projects similar to ogaclejapan/smarttablayout, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best SmartTabLayout alternative.
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.
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
FlycoTabLayout is a Java-based library for building tabbed navigation interfaces in Android applications. It functions as a custom view component and navigation tool that allows developers to organize content into switchable categories using customizable indicators and animations. The library distinguishes itself through integrated notification badge components that display unread message tips and status indicators directly on individual tabs. It also provides specialized navigation synchronization, allowing the tab layout to function as a standalone component or as a linked navigation bar ti
AppIntro is an Android onboarding framework used to create swipeable introductory screens and feature walkthrough carousels. It provides a navigation controller to manage wizard-style flow control and a UI component library for handling slide transitions and immersive layouts. The framework integrates system runtime permission requests directly into the onboarding sequence, allowing developers to block navigation until required access is granted. It supports different navigation modes that can toggle between standard and wizard behaviors, including the ability to restrict slide transitions ba
AndroidSwipeLayout is an Android UI library and custom view framework that enables the creation of layouts that reveal hidden action buttons when a user performs a swipe gesture. It functions as a gesture-based UI component that triggers callbacks based on the real-time position of the swipe. The framework is designed to support complex interaction patterns, specifically allowing for the nesting of multiple swipeable components within one another. The library covers mobile gesture interaction and custom view orchestration, providing tools to track swipe states and synchronize UI changes duri
BannerViewPager is a customizable Android UI component for creating sliding banners and image carousels. Built upon ViewPager2, it provides a system for rendering sequences of content with integrated automatic playback and infinite looping. The library distinguishes itself through transformer-based page transitions that allow for scaling or overlapping effects. It features a pluggable indicator system and support for multi-layout rendering, enabling different visual structures for individual items based on their data type. Broad capabilities include playback control synced with the Android v
ViewPagerIndicator is a set of reusable Android UI components designed to synchronize visual paging indicators with paginated view containers. It provides widgets that track a ViewPager to display the current page position and total page count. The project enables the customization of these indicators through themes, XML layout attributes, and direct method calls to align the visual appearance with an application's design. These components handle the dynamic generation of view elements based on page count and use scroll-position interpolation to animate transitions between active indicators.
BottomBar is an Android UI component that implements a Material Design bottom navigation bar. It serves as a reusable layout element for organizing top-level application destinations through a system of selectable tabs. The component features an adaptive layout system that optimizes horizontal space for tablet displays and uses density-aware adjustments for different screen dimensions. It includes a notification badge system to alert users of updates and supports conditional selection interception to prevent navigation based on application state or permissions. The library covers a broad ran
CoordinatorTabLayout is a custom Android user interface component that integrates tabbed navigation with folding headers and paging container synchronization. Built for the native Android view system, it implements Material Design patterns to create immersive screens where header content collapses as the user scrolls. The component synchronizes tab selection events with a paging container to update visible content. It manages the coordination between a tab navigation bar and a folding header, ensuring that scrolling events and page transitions remain aligned. The layout includes capabilities
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
MagicIndicator is a library for rendering visual page markers and navigation tabs that synchronize with paginated views in Android applications. It provides a set of tools for implementing interactive page indicators, including components for tracking and controlling page positions within sliding containers and fragment navigation systems. The project supports customizable tab navigation through custom layout files and interface-based styling. It enables the integration of notification badges, allowing numeric or status markers to be overlaid on navigation tabs to alert users of updates. The
PageIndicatorView is an Android custom view designed to track and visualize page progress within sliding layout systems. It serves as a visual indicator for ViewPager, synchronizing the active page marker and total page count with the state of a page slider. The component provides interactive visual effects and motion primitives that animate transitions during user swipe gestures. These include sliding or scaling effects that respond to touch movements to indicate the current position in a sequence. The project covers the implementation of page indicators for mobile navigation and onboarding
BottomNavigation is an Android UI component library used to implement a standard navigation bar at the bottom of a mobile screen. It provides a reusable interface for accessing top-level application destinations while following mobile design standards. The library includes a notification badge system to alert users of new content or pending actions on navigation tabs. This system allows for the customization of the colors, shapes, borders, and positions of these indicators, as well as control over their visibility. The project covers broader mobile UI customization, enabling the modification
MaterialDrawer is a navigation drawer library and side menu framework for Android applications. It provides a Material Design UI component that implements a sliding side menu to manage user movement between different sections of a mobile application. The framework supports the organization of complex navigation lists, including the use of expandable sections, sticky headers, and badges. It includes tools for building personalized interfaces, such as user profile displays and headers. The library handles navigation through item management, event handling via listeners, and state-driven UI upd
Android-ConvenientBanner is an image banner library for Android apps that provides a sliding image carousel with infinite looping and 3D transition effects. It is a specialized ViewPager implementation designed for rotating banners and reusable user interface carousels. The component features a system for simulating an endless loop by duplicating boundary items and utilizes matrix transformations and scaling to create three-dimensional depth during page transitions. It includes a timer-driven auto-rotation mechanism that triggers transitions at fixed intervals and pauses during user interacti
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
Android-Expert is a collection of educational resources and step-by-step instructional materials for learning Android app programming. It provides a comprehensive learning path for building mobile applications using the Kotlin programming language and Android Studio. The material covers the full development lifecycle, from designing interactive user interfaces with lists, cards, and sliders to implementing navigation workflows and screen transitions. It also includes instruction on connecting applications to remote servers to fetch external data and integrating that data into the app flow. T
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
SmartRefreshLayout is a pull-to-refresh framework and gesture interaction library for Android. It provides a scroll view wrapper that integrates interactive refresh headers and loading footers into mobile user interfaces, coordinating synchronized scrolling and touch events. The project features a pluggable architecture for custom refresh indicators and secondary refresh mechanisms. It utilizes damping-based gesture translation and overscroll rebound mechanisms to manage the tactile feel of drag resistance and physics-based animations. The library covers a broad range of interaction logic, i
Dialogplus is an Android dialog UI library and layout framework providing a collection of customizable pop-up windows and reusable interface elements. It serves as a toolkit for organizing list, grid, and custom view content within mobile screen overlays. The library enables the rendering of pop-up windows with tailored headers, footers, and content areas. It includes systems for placing these overlays at the top, center, or bottom of the display using built-in animations and predefined layout patterns. The framework supports flexible content organization through the use of scrollable lists,
This repository is a collection of reference implementations and galleries demonstrating best practices for the Android View system. It provides a set of practical examples for building user interfaces, including a component gallery and implementation guides for layouts, list performance, and motion design. The project distinguishes itself through detailed samples for coordinating layout animations and transition effects. It includes specialized demonstrations for complex motion animations using keyframes and interpolation, as well as a visualization tool for animation interpolation curves to
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.
A library to bring fully animated Material Design components to pre-Lolipop Android.
BGABanner-Android is a UI library for Android providing customizable sliding image galleries and paginated sliders. It functions as a wrapper for ViewPager2, integrating navigation controls and the ability to render image banners that load content from the network. The library features auto-scrolling capabilities with looping sequences that can pause or resume based on user touch interactions. It includes configurable page indicators, such as dots or numbers, and supports custom transition animations to modify the visual effects when switching between views. The component manages banner inte
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
This project is a jQuery plugin that replaces native browser scrollbars with themed, customizable versions supporting both vertical and horizontal axes. It provides a navigation layer designed to ensure unified scrolling behavior across mouse, keyboard, and touch-enabled devices. The plugin allows for the modification of scrollbar rails and draggers using CSS and pre-set themes to maintain cross-browser UI consistency. It enables control over the physical feel of navigation through adjustable momentum, snapping, and mouse-wheel acceleration. The system includes capabilities for programmatic
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
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
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.
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