22 dépôts
Specialized view components for organizing layouts within Android applications.
Distinct from Interactive Layout Management: Shortlist candidates focus on window managers or log management; this is about layout interaction within an Android app.
Explore 22 awesome GitHub repositories matching mobile development · Android Layout Components. Refine with filters or upvote what's useful.
AndroidAutoSize is a screen adaptation library for Android that automatically scales layout dimensions and view sizes across different screen resolutions. It functions as an automatic layout scaler and view dimension manager, ensuring that user interface proportions remain consistent by referencing a base design dimension. The library allows developers to define screen measurements using alternative units such as millimeters, inches, or points instead of standard density-independent pixels. It includes capabilities for custom dimension overrides, enabling the scaling process to be disabled or
Provides a comprehensive set of utilities for automatically adapting layouts to maintain consistency across diverse Android screen resolutions.
ImmersionBar is a set of control utilities for Android designed to manage immersive display modes, notch-aware layouts, virtual keyboard visibility, and system bar aesthetics. It provides a centralized way to maximize screen real estate by toggling full-screen displays and controlling the behavior of status and navigation bars. The library distinguishes itself through specialized adaptation for hardware cutouts and notches, calculating precise offsets and window insets to prevent user interface elements from being obscured. It also includes a dedicated handler for soft keyboard management, wh
Applies precise padding and margins to ensure app content does not overlap with the system status or navigation bars.
vlayout is an Android RecyclerView extension framework that uses pluggable layout helpers to mix grid, list, sticky, staggered, and fixed layouts within a single scrollable view. It provides a modular layout delegation system where each section of the RecyclerView is assigned a dedicated layout helper that manages its own measurement, placement, and decoration, enabling complex heterogeneous content displays. The framework extends RecyclerView's LayoutManager to delegate layout logic to these modular helper components, supporting features like sticky headers that remain visible at the top dur
Provides modular layout helpers to arrange child views in grid, list, sticky, and fixed patterns within RecyclerView.
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
Implements custom drag handles and anchor points to control the interaction between the sliding panel and other Android views.
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
Implements a specialized layout component for managing refresh animations and event triggers.
Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates RecyclerView adapter models at compile time from annotated custom views, data binding layouts, or view holders, eliminating the manual boilerplate typically associated with view holders and adapters. The library provides a diffing engine that automatically compares model lists and applies minimal updates with animations for insertions, removals, and moves. The library distinguishes itself through its controller-based model building, where a controller class with a buildModels meth
Provides automatic grid span adjustment for phone, tablet, and wide tablet screens.
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
Adjusts navigation interface proportions to optimize horizontal space on larger Android displays.
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
Reduces memory overhead and rendering time by implementing component recycling and layout result caching.
AndroidAutoLayout is an Android library that converts pixel values from design mockups into percentage-based layouts, enabling consistent scaling across different screen resolutions. At its core, it functions as a pixel-to-percentage converter and screen resolution scaling tool, allowing developers to design layouts using exact pixel dimensions from mockups and have them automatically adapt to any target device. The library provides several distinctive approaches to screen adaptation. It can generate resolution-specific dimension resource files from a single baseline design, eliminating manua
Converts pixel values from design mockups into percentage-based layouts for consistent scaling across Android screen resolutions.
This is a personal portfolio website built as a React.js single-page application. It serves as a self-coded platform to present a developer's resume and showcase their GitHub projects. The site includes structured sections for listing technical skills, displaying work history and education, and presenting a curated collection of projects with descriptions and links. The layout is built with React-Bootstrap and custom CSS to adapt across desktops, tablets, and phones.
Resizes and reflows the layout for optimal viewing on desktops, tablets, and phones.
Rainbond is a Kubernetes-native application platform that deploys and manages containerized applications through a graphical interface, abstracting Kubernetes complexity so users can work without needing to learn Kubernetes commands or concepts. It provides a complete application lifecycle management system covering development, architecture, delivery, and operations from a single unified web interface, with automated workflows that handle cluster provisioning, application deployment, and ongoing management. The platform distinguishes itself through its application marketplace, which packages
Publishes components into a library for drag-and-drop assembly, version management, and iterative upgrades.
SwipeBackLayout est une bibliothèque de navigation par geste Android et un composant de vue conçu pour implémenter des gestes de balayage sur les bords pour naviguer vers les écrans précédents. Il fournit la logique sous-jacente et la gestion de mise en page nécessaires pour intégrer des transitions de balayage horizontal dans la pile d'écrans d'une application. La bibliothèque utilise un gestionnaire de mise en page personnalisé pour coordonner le mouvement simultané des vues de premier plan et d'arrière-plan. Il mappe les décalages tactiles horizontaux à la translation et à l'opacité des hiérarchies de vues, utilisant l'interpolation pour calculer la progression visuelle basée sur le pourcentage de balayage. Le système inclut l'interception d'événements tactiles pour gérer les gestes au niveau parent et emploie une logique basée sur l'état pour déterminer si une transition doit se terminer ou revenir en arrière en fonction d'un seuil prédéfini.
Provides a specialized Android layout component for organizing and managing screen movement during gestures.
BoomMenu est une bibliothèque de menu radial Android et un framework d'animation d'interface utilisateur conçu pour créer des boutons d'action flottants extensibles. Il fournit un ensemble de composants de vue personnalisés programmables qui révèlent des éléments de sous-menu selon des motifs radiaux, horizontaux ou verticaux en utilisant des transformations 3D. La bibliothèque se distingue par un moteur d'animation à transformation 3D qui utilise l'assouplissement non linéaire, la mise à l'échelle et la rotation pour créer de la profondeur lors de l'expansion du menu. Elle inclut des modèles de mise en page spécialisés pour les menus de type partage et un système de mappage basé sur les coordonnées pour un déplacement précis des éléments. Le framework couvre un large éventail de fonctionnalités d'interface utilisateur, y compris la construction de menus flexibles avec des boutons étiquetés, des mises à jour de contenu dynamiques et l'assombrissement de l'arrière-plan pour la mise au point visuelle. Il prend en charge l'intégration à travers divers composants Android tels que les barres d'action, les fragments et les vues défilantes, tout en fournissant des outils pour le positionnement par glisser-déposer et le contrôle d'état programmatique. Pour maintenir les performances, le projet implémente un cache de ressources de recyclage de vue pour réutiliser les instances de boutons et réduire la création d'objets pendant les cycles d'expansion.
Embeds expandable radial menus into standard Android components like action bars, fragments, and scrollable lists.
SystemBarTint est une bibliothèque spécialisée et un outil utilitaire pour Android qui gère les couleurs d'arrière-plan et les dimensions de mise en page pour la barre d'état et la barre de navigation du système. Elle fournit un mécanisme pour appliquer des teintes d'arrière-plan personnalisées à ces éléments d'interface système, spécifiquement lors de l'utilisation de modes de fenêtre translucides. Le projet permet la coordination des thèmes d'application avec l'UI système en permettant l'utilisation de couleurs ou de drawables personnalisés pour la teinte. Il inclut des outils pour gérer le contenu plein écran (full-bleed) en calculant les dimensions exactes en pixels et les positions des barres système pour déterminer le padding et les insets de mise en page nécessaires. La bibliothèque gère la gestion des flags de fenêtre pour la translucidité et s'intègre à la mise en page des vues Android pour garantir que le contenu de l'application ne chevauche pas les composants de l'interface système.
Provides helper utilities to calculate padding and avoid overlaps with Android system bars.
Ce dépôt est une collection d'implémentations de référence et de galeries démontrant les meilleures pratiques pour le système Android View. Il fournit un ensemble d'exemples pratiques pour construire des interfaces utilisateur, y compris une galerie de composants et des guides d'implémentation pour les mises en page, les performances de liste et la conception de mouvement. Le projet se distingue par des échantillons détaillés pour coordonner les animations de mise en page et les effets de transition. Il inclut des démonstrations spécialisées pour des animations de mouvement complexes utilisant des images clés et l'interpolation, ainsi qu'un outil de visualisation pour les courbes d'interpolation d'animation afin de déterminer les paramètres de mouvement. La base de code couvre de vastes domaines de capacités, notamment la gestion de liste haute performance avec recyclage de vue et mises à jour différentielles, la navigation paginée avec synchronisation d'onglets et l'adaptabilité de l'interface pour les modes multi-fenêtres et écran partagé. Il inclut également des échantillons pour les mises en page de cartes, le contenu web intégré et les tests d'interface utilisateur automatisés pour les transitions de page.
Provides a comprehensive set of components for organizing Android layouts across different screen states.
XUI est un framework d'interface utilisateur Android natif et une bibliothèque de composants conçue pour construire des interfaces d'application. Il fournit une suite complète de layouts natifs, de champs de saisie et d'éléments de navigation, supportés par un système de gestion de thèmes à plusieurs niveaux pour définir des attributs visuels globaux et des styles responsifs. Le framework se distingue par un ensemble spécialisé de vues personnalisées et de toolkits d'interaction, incluant des calendriers haute performance, le rendu de visualisation de données et une variété de boutons stylisés avec des minuteurs intégrés et des effets visuels. Il inclut également des capacités de traitement multimédia intégrées telles que le scan de codes-barres et QR, la génération de QR personnalisés et une interface de recadrage d'image. Le projet couvre une large surface de capacités UI et UX, incluant divers composants de saisie de données, des primitives de fenêtres flottantes et un large éventail d'indicateurs de feedback comme les snackbars et les jauges de progression. Il fournit en outre le templating de layout, la configuration typographique et des systèmes d'animation pour gérer les transitions de vues et le feedback interactif.
Implements layout adaptation logic to ensure a consistent experience across various Android screen sizes and OS versions.
Dialogplus est une bibliothèque d'interface utilisateur de dialogue Android et un framework de mise en page fournissant une collection de fenêtres pop-up personnalisables et d'éléments d'interface réutilisables. Il sert de boîte à outils pour organiser le contenu de listes, de grilles et de vues personnalisées au sein de superpositions d'écran mobiles. La bibliothèque permet le rendu de fenêtres pop-up avec des en-têtes, des pieds de page et des zones de contenu sur mesure. Elle inclut des systèmes pour placer ces superpositions en haut, au centre ou en bas de l'affichage en utilisant des animations intégrées et des patterns de mise en page prédéfinis. Le framework prend en charge une organisation flexible du contenu via l'utilisation de listes défilantes, de grilles et l'intégration de mises en page définies par l'utilisateur ou d'instances de vue spécifiques. Ces éléments sont gérés via des adaptateurs de données et des conteneurs structurels pour maintenir des mises en page visuelles cohérentes.
Provides a toolkit for organizing list, grid, and custom view content specifically within mobile screen overlays.
Lottie est un moteur d'animation vectorielle JSON et un lecteur multiplateforme qui rend des graphiques animés indépendants de la résolution. Il fonctionne comme un moteur de rendu runtime qui traduit les compositions Adobe After Effects en animations en temps réel en utilisant une représentation intermédiaire basée sur JSON. Le projet se distingue en permettant un contrôle dynamique sur les actifs vectoriels au moment de l'exécution. Il permet la modification programmatique des propriétés d'animation, des couleurs et des états de lecture via des chemins de clés hiérarchiques et des thèmes dynamiques. Cela permet aux animations de répondre aux changements d'état de l'application en temps réel et aux gestes de l'utilisateur. Le moteur couvre un large éventail de capacités, y compris le rendu accéléré par le matériel et la mise en cache des modèles pour des performances élevées. Il fournit un contrôle de lecture complet pour la recherche d'images, la boucle de segments et le déclenchement d'événements, parallèlement à un système de rendu qui prend en charge les caméras 3D, le morphing de formes et la génération vectorielle procédurale. La gestion des actifs est gérée via l'importation de données multi-sources, prenant en charge les bundles locaux, les URL réseau et divers formats de fichiers vectoriels.
Provides libraries to scale animations to fill various screen dimensions using cropping or filling modes.
FloatWindow est une bibliothèque Android pour créer des vues superposées déplaçables qui persistent à travers différentes applications et activités. Elle fournit des composants spécialisés pour implémenter des fenêtres flottantes, gérer les permissions de superposition au niveau du système et calculer les coordonnées à l'écran. Le projet dispose d'un framework d'animation de fenêtre qui permet des comportements d'ancrage sur les bords et des animations de mouvement personnalisées. Il inclut un gestionnaire de permissions de superposition pour demander et surveiller les permissions système requises pour dessiner des interfaces au-dessus d'autres applications. La boîte à outils couvre le positionnement de l'UI en utilisant des pixels absolus ou des pourcentages d'écran relatifs pour maintenir la cohérence à travers les résolutions d'appareils. Elle fournit également des mécanismes de contrôle de visibilité pour filtrer les superpositions basées sur des activités spécifiques ou des changements d'état en arrière-plan, ainsi qu'un suivi d'état pour des mises à jour de position et de visibilité en temps réel.
Positions UI elements using screen percentages to ensure a consistent look across various device resolutions.
flutter_screenutil est un framework d'interface utilisateur réactif et un outil de mise en page adaptatif pour Flutter. Il fournit un système pour mettre à l'échelle les dimensions de mise en page et les polices en fonction d'un design de référence afin d'assurer des proportions cohérentes sur différentes résolutions d'écran et appareils. La boîte à outils fonctionne comme un fournisseur de métriques d'écran qui récupère les propriétés de l'appareil en temps réel, notamment la largeur, la hauteur, la densité de pixels et les dimensions de la zone de sécurité (safe area). Elle gère spécifiquement l'adaptation de la mise en page lors des changements d'orientation de l'appareil et des mises à jour du mode écran partagé. Le framework couvre la gestion adaptative de la typographie, la mise à l'échelle des dimensions de mise en page et la surveillance des métriques d'écran. Il inclut des mécanismes pour contrôler les reconstructions d'interface utilisateur lors du redimensionnement de l'écran et applique des limites de mise à l'échelle pour maintenir l'intégrité visuelle sur de très grands ou très petits écrans.
Handles screen size changes and orientation shifts to ensure the UI fits various mobile device screens.