Question

Est-il possible d'ajouter un badge standard à la recherche d'une UIButton norme?

S'il est pas pris en charge semi-native, ce serait la façon la plus simple pour y parvenir?

Exemple d'image:

Un bouton interface utilisateur iPhone

Était-ce utile?

La solution

Voici une classe VERY NICE par Sascha Paulus appelé CustomBadge , qui construit et rend des badges personnalisés à l'aide de base Graphics . Ce ne sont que des sous-classes UIView, de sorte que vous les poser à l'aide de leur cadre comme tout autre sous-classe UIView.

Je l'ai utilisé plusieurs fois cette bibliothèque et toujours été satisfaits des résultats. Flexible, facile à utiliser. Je le recommande sans.

Autres conseils

Vous pouvez vérifier plusieurs options: CocoaControls Badges

La classe que Apple utilise est _UIBadgeView ( https : //github.com/JaviSoto/JSBadgeView . La grande chose au sujet de celui-ci est qu'il vous permet de positionner le badge par rapport à une autre vue automatiquement, dans un de ses coins.

Nous avons une vue badge Nimbus qui est super facile à utiliser et bien documenté:

NimbusBadge

Je ne sais pas comment cela se fait hors de la boîte et honnêtement, je doute que Apple construit que dans le SDK.

Quoi qu'il en soit, vous pouvez créer une vue personnalisée avec un bouton, ajoutez l'arrière-plan du badge comme UIImageView et placer une étiquette sur elle pour tenir le compte de badge.

C'est une solution rapide, il pourrait être préférable de créer une sous-classe personnalisée de UIButton et ajoutez vos trucs badge comme un sous-vue

J'irais la même manière que @ Björn Kaiser: Utilisez le bouton que vous le souhaitez, puis ajouter une vue personnalisée avec cet insigne comme un sous-vue à - je l'ai fait et cela fonctionne bien

En ce qui concerne la vue, vous pouvez dessiner comme vous aimez. Vous pouvez dessiner manuellement ou utiliser CoreAnimation et laissez faire la partie principale, à savoir theBadge.layer.cornerRadius = ...; pour lui donner une forme ronde, dessiner le texte / numéro dans drawRect: ou l'ajouter comme une étiquette etc.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top