Question

Je suis en mesure d'ajouter des ombres à de nombreux objets de l'interface utilisateur à mon avis, y compris déposer plutôt bien shadowing certains dessin personnalisé dans un UIImageView. Cependant, le même code ne produit rien lorsqu'il est appliqué à un UITextView:

[desc.layer setShadowColor:[[UIColor blackColor] CGColor]];
[desc.layer setShadowRadius:2.0f];
[desc.layer setShadowOffset:CGSizeMake(1, 1)];
[desc.layer setShadowOpacity:0.8f];

Est-ce quelque chose que je suis absent? J'espérais utiliser le quartz pour ajouter une bordure et une ombre portée. Le code frontière ne fonctionne lorsque commenté dans:

//Border.
/*
[desc.layer setBackgroundColor:[[KookaSettings sharedInstance].cellBackgroundColorD CGColor]];
[desc.layer setBorderColor: [[UIColor blackColor] CGColor]];
[desc.layer setBorderWidth:1.0f];
[desc.layer setCornerRadius:8.0f];
*/
Était-ce utile?

La solution

Je sais que l'ombre ne fonctionne pas si la vue a clipsToBounds ensemble. Peut-être UITextView a que défini par défaut?

Autres conseils

Vous devez définir clipsToBounds NO pour l'ombre, mais l'inconvénient est que si votre texte est plus long que la zone visible de la vue et que vous devez le faire défiler, il ne sera plus coupé des limites visibles de la vue . Je suis à la recherche d'un moyen propre autour de cela.

Guillaume est juste sur le paramètre clipsToBounds.

Il est un peu désordonné, mais vous pouvez toujours ajouter une vue dégagée derrière le UITextView et déposer une ombre sur elle ...

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