11 dépôts
Creation of bespoke UI components using low-level graphics APIs and coordinate system management.
Distinct from Android View Binding: Existing candidates focus on system customization, calendar views, or view binding, rather than the general practice of creating custom views via Canvas and Path.
Explore 11 awesome GitHub repositories matching mobile development · Custom View Development. Refine with filters or upvote what's useful.
AndroidNote is a technical knowledge base and reference resource for Android development. It provides comprehensive guidance on application architecture, custom view development, and advanced graphics programming. The project is distinguished by its depth in visual implementation, covering pseudo-3D perspective projections via virtual cameras and complex 2D rendering using Bézier curves and PorterDuff color blending. It also provides detailed methodologies for app modularization and the management of internal libraries through private Maven repositories and JitPack. The reference surface ext
Provides detailed technical guidance on building bespoke UI components using Android Canvas, Path, and Matrix transformations.
This is an Android alert dialog library providing a collection of stylized pop-up components for application feedback. It provides customizable UI components for displaying themed notification windows, including integrated headers, buttons, and specialized alerts for success, error, and warning states. The library features a configurable progress indicator that renders circular loading animations with adjustable speeds and colors to show background activity. These pop-ups support real-time updates to text, icons, and interaction listeners without recreating the window. The system handles dia
Implements custom dialogs by extending standard Android view class hierarchies.
RoundedImageView is an Android library providing custom view implementations for rendering images with rounded corners, circles, and ovals. It uses hardware acceleration to ensure high performance and smooth edge quality when clipping images into these shapes. The library includes a customizable image border view that draws consistent strokes around images, scaling automatically as the view size changes. It also provides a tiled image background view that repeats image patterns across a surface using various tiling modes.
Overrides the standard onDraw method to implement bespoke rendering for image borders and tiled backgrounds.
NumberProgressBar est une bibliothèque de vue Android personnalisable qui fournit un indicateur de progression fin. Il combine un niveau de remplissage visuel avec une valeur numérique pour afficher l'état d'achèvement au sein des applications Android. Le composant permet l'attachement d'étiquettes de préfixe et de suffixe personnalisées aux indicateurs numériques pour fournir un contexte supplémentaire. Il prend en charge une gamme d'options de stylisation, y compris la possibilité d'ajuster les couleurs, la hauteur et la taille du texte des barres de progression pour correspondre à des designs visuels spécifiques.
Extends the base Android View class to create a specialized progress tracking component.
MaterialEditText est une bibliothèque de composants UI Android et un framework de saisie de formulaires mobiles utilisés pour créer des champs de texte conformes aux standards Material Design. Elle propose une collection de composants de saisie avec étiquettes flottantes, états d'erreur et styles visuels thématisés. La bibliothèque permet le rendu de champs de texte avec des étiquettes animées et du texte d'aide intégré. Elle prend en charge l'ajout d'icônes de design et permet la personnalisation des couleurs et des polices pour le texte principal, d'erreur et d'aide. Le framework inclut des fonctionnalités de validation de saisie mobile, comme l'application de limites de caractères minimales et maximales pour la saisie de texte.
Extends the Android EditText class to implement specialized Material Design drawing and behavioral logic.
WilliamChart est une bibliothèque de visualisation de données Android et une boîte à outils utilisée pour rendre des graphiques et diagrammes interactifs au sein d'applications Android. Il fonctionne comme une bibliothèque de composants d'interface utilisateur pour intégrer des tableaux de bord et des métriques pilotés par les données dans les mises en page Android. La bibliothèque inclut un composant spécialisé pour représenter des données catégorielles proportionnelles sous forme de graphiques en anneau (donut charts), qui sont des graphiques circulaires avec des centres creux. Elle fournit un moteur de dessin qui utilise des API de bas niveau pour mapper les données numériques aux coordonnées de pixels sur l'écran.
Extends Android's base view class to implement custom rendering and a dedicated draw loop.
Ce projet est une bibliothèque d'animation de pliage Android et un composant Material Design. Il fournit un élément d'interface réutilisable qui utilise une animation de pliage de papier en trois dimensions pour révéler du contenu, permettant aux utilisateurs de basculer entre un titre réduit et des informations développées. La bibliothèque inclut un composant de contenu pliable avec des paramètres configurables pour la durée de l'animation, les couleurs d'arrière-plan, le nombre de retournements et la profondeur de la caméra. Elle implémente ces transitions via une vue personnalisée qui gère l'état visuel entre les modes réduit et développé. Le système sous-jacent utilise le rendu OpenGL ES et des transformations de coordonnées basées sur des matrices pour simuler la profondeur spatiale 3D et la flexion physique. Il emploie une interpolation basée sur les frames et une simulation de profondeur de caméra pour maintenir les transitions visuelles pendant le pliage.
Extends the Android View class to implement custom drawing and touch handling for the folding animation.
Depth-LIB-Android- is a view depth library and layout framework for Android that provides tools for adding spatial layering and thickness effects to user interface elements. It functions as a custom shadow renderer designed to establish a visual hierarchy through three-dimensional depth. The library specifically provides rotation-consistent shadows, ensuring that shadows remain visually aligned and attached to UI elements even as the associated view is rotated. The system manages these effects through a custom drawing pipeline and canvas-based rendering to handle shadow blurring, opacity, an
Overrides standard Android drawing methods to implement a bespoke rendering pipeline for shadow blurring and opacity.
Ticker est un composant UI Android personnalisé qui implémente des animations de caractères défilants pour simuler des affichages de compteur kilométrique mécanique. Il fournit une vue de texte défilant conçue pour animer les transitions entre différentes chaînes de caractères en utilisant un mouvement vertical. Le composant utilise une boucle de dessin personnalisée et un mappage de séquence de tableau de caractères pour contrôler le chemin de défilement vertical. Il prend en charge les chemins d'animation en boucle pour créer des cycles fluides et inclut des mécanismes pour gérer les décalages de translation lors de la transition entre des chaînes de longueurs variables.
Overrides standard drawing methods to manually render character slices based on animation progress.
ShineButton est une bibliothèque d'animation d'interface utilisateur Android qui fournit des composants de boutons personnalisables avec des animations intégrées de balayage lumineux et de particules. Elle fonctionne comme une extension de composant de vue pour les interfaces Android afin d'attirer l'attention de l'utilisateur grâce à des effets visuels interactifs. La bibliothèque propose un système pour créer des animations de balayage lumineux et des effets de particules dynamiques qui se déclenchent lors de l'interaction utilisateur. Elle permet de définir les silhouettes des boutons via un masquage d'image personnalisé et l'application de vecteurs drawables. Le style visuel est géré via des paramètres de configuration qui ajustent la taille, le nombre, la couleur, la durée et la distance des particules lumineuses.
Extends the native Android View class to encapsulate custom drawing logic and animation states for buttons.
BadgeView est un composant UI personnalisé pour Android qui affiche des indicateurs de notification numériques ou textuels sur d'autres éléments de vue. Il est construit comme un composant Material Design qui fonctionne comme une vue animée et interactive pour signaler des alertes ou des compteurs d'éléments. Le composant se distingue par la prise en charge des gestes de glisser-pour-rejeter (drag-to-dismiss), permettant aux utilisateurs de supprimer les alertes de l'écran via des interactions tactiles. Il utilise également des animations de visibilité fluides pour effectuer les changements d'état plutôt que des changements immédiats. La bibliothèque couvre de larges capacités UI incluant la gestion de contenu pour mettre à jour les valeurs textuelles, la personnalisation visuelle des couleurs et des bordures, et la possibilité de basculer la visibilité en fonction de seuils de comptage.
Extends the Android View class to create a specialized component for anchoring notification indicators.