Swift - Comment créer une vue avec une forme recadrée en elle
Je suis en train d'essayer d'atteindre le résultat montré dans l'image en utilisant swift 1.2 et xcode 6.
Fondamentalement, je veux créer une vue avec une forme de coupe en elle pour être en mesure de voir le point de vue ci-dessous pour faire un tutoriel pour mon application.
Je sais comment créer une forme circulaire, mais je ne sais pas comment le couper en vue.
J'ai besoin d'un exemple complet sur comment faire s'il vous plaît.
Merci d'avance
vous devez créer un masque sur la superposition blanc, puis définissez ses alpha autour de
Merci pour la réponse, mais je n'ai pas de problèmes à propos d'alpha à montrer ce qui est en dessous de la vue. Le réel problème est que je ne sais pas comment créer un masque (ou superposition) de vue (comme le recadrée cercle sur le point de vue)
hey corps, j'ai trouvé ce tutoriel qui doit être utile pour vous: Créer un CALayer masque par la combinaison de multiples chemins d'accès
0.5
et le travail est assez bien fait.Merci pour la réponse, mais je n'ai pas de problèmes à propos d'alpha à montrer ce qui est en dessous de la vue. Le réel problème est que je ne sais pas comment créer un masque (ou superposition) de vue (comme le recadrée cercle sur le point de vue)
hey corps, j'ai trouvé ce tutoriel qui doit être utile pour vous: Créer un CALayer masque par la combinaison de multiples chemins d'accès
OriginalL'auteur LamBronx | 2015-04-15
Vous devez vous connecter pour publier un commentaire.
La meilleure façon de le faire serait de créer une image png avec une partie transparente blanche autour de l'extérieur et clairement un cercle au milieu. L'empilement des 2 images vues sur le dessus les uns des autres, avec le masquage de l'image sur le dessus, et de définir sa "opaque" drapeau de faux.
Vous pourriez aussi le faire par la création d'un CAShapeLayer et de le configurer pour utiliser une couleur blanche translucide, puis installez une forme qui est le carré de la coupe du trou de forme. Vous auriez pu installer que la couche de forme sur le dessus de votre affichage de l'image de la couche.
Les plus polyvalents façon de le faire serait de créer une sous-classe personnalisée de UIImageView et avoir de la méthode init de votre sous-classe de créer et d'installer la couche de forme. Je viens de créer un résumé d'hier, qui illustre la création d'une sous-classe personnalisée de UIImageView. Voici le lien: ImageViewWithGradient gist
Que le gist crée un calque de dégradé. Il serait facile de l'adapter pour créer un calque de forme au lieu de cela, et si vous avez modifié le layoutSubviews méthode vous pouvez le faire adapter la vue et le chemin d'accès si l'affichage de l'image est redimensionnée.
EDIT:
Ok, j'ai pris l'étape supplémentaire de la création d'une aire de jeux qui crée un recadrage de l'image vue. Vous pouvez la trouver à ImageViewWithMask sur github
L'image qui en résulte pour mon terrain de jeu ressemble à ceci:
OriginalL'auteur Duncan C
Même s'il n'y est une réponse, je voudrais partager ma façon:
OriginalL'auteur Dănuț Mihai Florian
Voici un exemple de code pour savoir comment vous pouvez faire un Masque circulaire pour une UIView:
Voici ce que j'ai fait dans la cour de récréation:
Merci beaucoup pour la réponse, mais j'ai encore du mal. J'ai utilisé votre code, mais tout ce qu'elle fait, c'est de faire le sampleView une vue circulaire. J'ai mis ton code dans le viewDidLoad de mon ViewController mais cela ne fonctionne pas comme l'image que vous avez posté votre réponse. Je ne sais pas si je suis (probablement) manque quelque chose mais j'ai vraiment du mal sur ce point et je suis vraiment reconnaissant de toute aide. Merci beaucoup encore une fois.
Oui, vous avez raison~, je dois définir kCAFillRuleEvenOdd pour faire la couche de soustraction. Mais ici, j'utilise 2 imageView faire une composition. Je pense que c'est la même, qu'en pensez-vous?
L'effet est le même. Votre technique, l'image est en partie transparent et de révéler la couche sous elle. Le mien met un blanc opaque en superposition sur l'image. Les deux approches ont de la valeur.
oui....de ma faute
OriginalL'auteur duan
OriginalL'auteur Raul Quispe
OriginalL'auteur mazorati