2010-04-01 8 views
2

Je construis une application dans laquelle si un UIImageView frappe un autre se produit, j'utilise l'instruction CGRectIntersetsRect, je voudrais le rendre aussi précis que je peux, à le moment où j'ai environ 8 UIImageViews à l'intérieur de celui-ci UIImageView et je détecte si quelque chose leur frappe 8 petites vues, j'ai décidé que ce n'est pas une façon très précise de s'y prendre. Le problème est que les autres UIImageView sont dans UIImageView, c'est un ovale, donc c'est compliqué, j'ai essayé de le masquer, en utilisant le image.layer.radius 10.0 ou quel que soit le code. mais cela ne transforme pas réellement l'ensemble du cadre, est-il possible de transformer réellement l'ensemble de la trame alors quand un UIImageView frappe la forme ovale alors quelque chose se passe?Iphone sdk, arrondi UIImageView coins FRAME, non seulement le masquer

si oui quelqu'un pourrait me l'expliquer.

Merci Harry

+0

BUMP ... personne. – Harry

Répondre

-1

Un cadre de UIImageView est un CGRect, un CGRect est un rectangle et un rectangle n'a pas de propriétés arrondies.

+0

D'accord, merci. Donc je suppose que je mets juste encore beaucoup de petites UIImageviews, ou y a-t-il un CGOval? ill faire un peu de recherche, merci quand même harry – Harry

+0

Je viens d'avoir une idée rapide, est-il possible de rogner des bits d'un UIImageView, par exemple, il a 6 côtés au lieu de 4? – Harry

+0

Il aura toujours 4 côtés. –

7

c'est vraiment très simple. En vue, UIImageView a une couche et une couche a des propriétés cornerRadius:

imageView.layer.cornerRadius = 5.0; 
imageView.layer.masksToBounds = YES; 

eBuildy, iPhone spécialistes

+0

assurez-vous d'importer du quartz ou sinon il ne compilera pas –

+0

Oui, assurez-vous également d'ajouter le cadre de quartz dans votre projet en plus de l'import "Qua ..." BTW, quelqu'un m'a dit que cette solution n'est pas bonne dans un UITableView bcoz la mauvaise performance, est-ce que quelqu'un a des entrées sur elle? – eBuildy