2016-12-08 1 views
0

Je veux créer un objet ImageView, Mais, lorsque j'utilise la propriété contentRect pour créer, le résultat a une ombre, aidez-moi.Comment éliminer l'ombre dans iOS

Regardez ce code:

CALayer *blueLayer = [CALayer layer]; 
blueLayer.frame = CGRectMake(50.0f, 50.0f, 100.0f, 200.0f); 
blueLayer.backgroundColor = [UIColor blueColor].CGColor; 
UIImage *image = [UIImage imageNamed:@"vclrs_me_wodeshoucang"] ; 
CGImageRef imageRef = image.CGImage ; 
blueLayer.contents = (__bridge id _Nullable)imageRef ; 
blueLayer.contentsGravity = kCAGravityCenter ; 
blueLayer.contentsRect = CGRectMake(0, 0, 2, 2) ; 
blueLayer.contentsScale = image.scale ; 
[self.layerView.layer addSublayer:blueLayer]; 

Et, S'il vous plaît lire le résultat (photo): enter image description here

Répondre

0

https://developer.apple.com/reference/quartzcore/calayer/1410866-contentsrect?language=objc

Selon les documents ci-dessus

par défaut à l'unité rectangle (0.0, 0.0, 1.0, 1.0).

Si des pixels en dehors du rectangle de l'unité sont demandés, les pixels de bord de l'image du contenu seront étendus vers l'extérieur.

Si un rectangle vide est fourni, les résultats ne sont pas définis.

Donc, selon elle, il donne une sortie comme ce

image

+0

Cette ligne de code qui n'a pas d'effet – user5465320

+0

Si vous ne vous dérange pas, peut vous m'envoyez votre projet à [email protected] afin que je puisse le voir correctement quel problème vous rencontrez? –

+0

A été envoyé, s'il vous plaît vérifier. Merci – user5465320

0

Essayez ensemble self.layerView.clipsToBounds = OUI