
Une sous-classe entièrement personnalisable de l' UIControl native qui vous permet de créer de beaux boutons sans écrire de ligne de code.
Vous pourrez créer des boutons comme ceux-ci en utilisant uniquement le constructeur d'interface:

De plus, vous pouvez les utiliser pour des opérations asynchrones.

Pour intégrer LGBUTTON dans votre projet Xcode à l'aide de cocoapods, spécifiez-le dans votre Podfile :
use_frameworks!
pod 'LGButton' Vous pouvez ajouter des images / icônes à votre bouton, les icônes sont prises à partir de différentes collections d'icônes prêtes à l'emploi, les images peuvent être importées directement à partir de votre dossier PROJECT Assets.
Vous pouvez personnaliser les icônes / images à gauche et / ou à droite du titre du bouton.
Les icônes sont gérées par l'intégration SwifIConFont, vous pouvez donc facilement ajouter et personnaliser les icônes de bouton en choisissant parmi les collections d'icônes de police les plus populaires. En particulier:
| Collection | Nom de police | Feuille de triche |
|---|---|---|
| Font génial | fa | Liste |
| Icônes ion | Io | Liste |
| Octocons | OC | Liste |
| Ouvert emblématique | IC | Liste |
| Icône de matériau | mame | Liste |
| Thèmer | ti | Liste |
| Icônes de carte | mi | Liste |
Les principales propriétés que vous devez définir pour utiliser les icônes de police sont:
Nom de la police de l'icône : Vous pouvez choisir une valeur dans le tableau ci-dessus, différentes valeurs seront ignorées (veuillez considérer que toutes les icônes ne peuvent pas être disponibles car cette bibliothèque ne peut pas être mise à jour juste après une mise à jour de la bibliothèque de polices).
String d'icône : le nom d'icône tiré de la feuille de triche sans le préfixe de la collection.
Donc, si vous souhaitez utiliser fa-align-left de Font Awesome , le nom de police icône sera fa et la chaîne d'icône sera align-left .
Définissez la propriété Source d'image afin d'utiliser une image à partir de votre dossier d'actifs.
Remarque: Si la source d'image est définie, toutes les autres propriétés concernant l'icône de police du même côté seront ignorées.
Faites glisser et déposez un objet UIView dans votre contrôleur de vue et définissez sa classe et son module sur LGButton .

Personnalisez votre bouton en définissant les propriétés à partir du constructeur d'interface.


| Attribut | Description | Valeur par défaut |
|---|---|---|
| Couleur BG | Couleur d'arrière-plan principal | clair |
| Afficher les commentaires tactiles | Si une rétroaction tactile doit être visible ou non | vrai |
| Couleur de démarrage du gradient | La première couleur du fond dégradé | néant |
| Couleur finale du dégradé | La deuxième couleur du fond dégradé | néant |
| Couleur finale du dégradé | La deuxième couleur du fond dégradé | néant |
| Gradient horizontal | Si le gradient doit être horizontal ou non | FAUX |
| Rotation du gradient | Réglez l'angle de rotation du gradient (degrés de -360 à 360) | 0 |
| Rayon d'angle | Le rayon d'angle | 0.0 |
| Coins entièrement arrondis | Appliquer un rayon d'angle est égal à la hauteur / 2 | FAUX |
| Couleur de bordure | La couleur de la bordure | blanc |
| Largeur des frontières | La largeur de la frontière | 0.0 |
| Couleur de titre | La couleur du titre | blanc |
| Chaîne de titre | La chaîne de titre | Vide_string |
| Nom de police de titre | Le nom de police de titre | néant |
| Taille de la police de titre | La taille de la police de titre | 14.0 |
| Orientation verticale | Si true l'icône gauche sera placée sur le dessus et l'icône droite sera placée en bas | FAUX |
| Chaîne d'icône gauche | Le nom de l'icône de gauche (tiré de la feuille de triche) | Vide_string |
| Nom de la police de l'icône de gauche | Le nom du nom de la police de l'icône de gauche (tiré du tableau ci-dessus) | Vide_string |
| Taille de la police de l'icône gauche | La taille de la police de l'icône gauche | 14.0 |
| Couleur de l'icône gauche | La couleur de l'icône gauche | blanc |
| Image gauche src | Le nom de l'actif de source gauche | néant |
| Hauteur de l'image gauche | La hauteur de l'image gauche | 20.0 |
| Largeur d'image gauche | La largeur d'image gauche | 20.0 |
| Couleur de l'image gauche | La couleur de la teinte de l'image gauche | néant |
| Chaîne d'icône de droite | Le nom de l'icône de droite (tiré de la feuille de triche) | Vide_string |
| Nom de la police de l'icône droite | Le nom du nom de police de l'icône de droite (tiré du tableau ci-dessus) | Vide_string |
| Taille de la police d'icône de droite | La bonne taille de police d'icône | 14.0 |
| Couleur de l'icône droite | La bonne couleur d'icône | blanc |
| Image droite SRC | Le nom de la bonne source | néant |
| Hauteur de l'image droite | La bonne hauteur d'image | 20.0 |
| Largeur d'image droite | La bonne largeur d'image | 20.0 |
| Couleur de l'image droite | La bonne couleur d'image | néant |
| Icône du titre d'espacement | L'espacement entre le titre et l'image / icône | 16.0 |
| Haut d'espacement | L'espacement supérieur interne | 8.0 |
| Espacement du bas | L'espacement inférieur interne | 8.0 |
| Espacement menant | L'espacement de tête interne | 16.0 |
| Espacement de fuite | L'espacement de fuite interne | 16.0 |
| Décalage de l'ombre | Le décalage de l'ombre | (0,0) |
| Rayon de l'ombre | Le rayon de l'ombre | 0.0 |
| Opacité de l'ombre | L'opacité de l'ombre | 1.0 |
| Couleur de l'ombre | La couleur de l'ombre | noir |
| Chargement de la couleur de la fileuse | La couleur de la spinner de chargement | blanc |
| Chaîne de chargement | Le texte du message de chargement | Vide_string |
| Nom de la police de chargement | Le nom de police de message de chargement | Vide_string |
| Taille de la police de chargement | La taille de la police de message de chargement | 14.0 |
| Gauche aligné | true si les éléments du bouton doivent être alignés à gauche. Il nécessite que le bouton ait une largeur fixe | FAUX |
| Droit aligné | true si les éléments du bouton doivent être alignés vers la droite. Il nécessite que le bouton ait une largeur fixe | FAUX |
Vous pouvez télécharger le projet de démonstration si vous souhaitez en vérifier plus.
N'hésitez pas à soumettre des problèmes et des demandes de fonctionnalités.
Les contributions sont plus que les bienvenues. Votre contribution peut inclure la fixation de bogues ou / et les nouvelles fonctionnalités.
Veuillez suivre le flux de travail GIT "Fork-and-Pull" (vérifiez ici plus).
Remarque: assurez-vous de fusionner les derniers de "en amont" avant de faire une demande de traction!
Lorenzo Greco
Le projet SwifIconFont est utilisé pour fournir des icônes prêtes à l'emploi.
MIT License
Copyright (c) 2017 Lorenzo Greco
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.