2009-06-13 1 views
4

J'ai une boule affectée à UIImageView dans Interface Builder. Un IBOutlet de UIImageView est connecté à un UIViewController correspondant. L'image a un fond blanc. Lorsque je l'assigne à l'UIImageView dans IB, l'arrière-plan est transparent. Dans IB, j'ai le UIImageView défini sur un fond transparent et le remplissage d'aspect.Suppression de l'arrière-plan de l'image dans UIImageView au moment de l'exécution

Quand j'Affectez les UIImageView une image lors de l'exécution:

la place UIImageView a un fond blanc où la balle ne montre pas. Signification des quatre coins. Quelle est la différence que la version IB ne montre pas un fond blanc à l'exécution et la version programmatique fait?

Répondre

6

Assurez-vous de régler self.ball.opaque = NO; en plus de définir la couleur d'arrière-plan pour effacer. Sinon, un fond blanc sera encore dessiné. Je crois que vous devez définir ces deux paramètres, que vous utilisiez IB ou Xcode pour créer la vue, mais IB les a peut-être définis pour vous.

+0

Merci pour ces deux suggestions. Ma faute. Il y avait une version PNG des JPG qui avait des arrière-plans transparents. IB utilisait les fichiers PNG pendant que j'utilisais les fichiers JPG par programme. Pouah! Cependant, si l'image n'a pas d'arrière-plan transparent, il n'y a pas grand chose à faire à ce propos. Opaque ne le change pas. J'ai également essayé de régler l'opacité en incluant le framework Quartz et self.ball.layer.opacity = 0.0f; mais un non encore. Modifier l'image est l'itinéraire le plus facile. – 4thSpace

2

Si vous devez supprimer l'arrière-plan par programmation, vous pouvez vous reporter au guide "Bitmap Images and Image Masks". Je n'ai aucune autre idée sur ce point ... juste en utilisant CGImageCreateWithMaskingColors.

Si votre * .PNG (ou tout autre fichier de ressources graphiques) n'a pas intégré en toute transparence (juste fond blanc) mais avec IB il semble que transparent - peut être alpha propriété moins de 1 pour votre UIImageView et vous voyez une image partiellement transparente.

Questions connexes