2012-11-01 10 views
6

Ich arbeite an einer Fotocollage iphone APP, und ich muss unregelmäßige Formfotorahmen innerhalb jeder Form machen es wird ein uiimageview mit Gesten geben, auf dem Klopfen Die Form, die ich brauche, um ein Foto für diese Form zu wählen, diese Rahmen sind sehr ähnlich zu Frames von Instacollage iPhone App. Link: https://itunes.apple.com/in/app/instacollage-pro-pic-frame/id530957474?mt=8wie man unregelmäßige Form uiview macht und setzen uiimageview innerhalb dieser Formen wie instacollage iphone app

stellen Sie mir eine Art von Anleitung, wie Sie diese Aufgabe erledigen.

Dank

+0

Sie UICollectionView http://www.raywenderlich.com/22324/beginning-uicollectionview-in-ios-6-part-12 suchen können – iosMentalist

Antwort

2

Sie Mask-Eigenschaft der Schicht, dies erreichen können.

CAShapeLayer *maskLayer = [CAShapeLayer layer]; 
maskLayer.frame = self.imageView.bounds ; 
UIBezierPath *roundedPath = [UIBezierPath bezierPathWithOvalInRect:maskLayer.frame]; 
maskLayer.fillColor = [[UIColor whiteColor] CGColor]; 
maskLayer.backgroundColor = [[UIColor clearColor] CGColor]; 
maskLayer.path = [roundedPath CGPath]; 

// Add mask 
self.imageView.layer.mask = maskLayer; 
0

Dank Sahana. Der entsprechende Code in Swift ist:

let maskLayer = CAShapeLayer() 
maskLayer.frame = self.imageView.bounds 
let roundedPath = UIBezierPath(ovalInRect: maskLayer.frame) 
maskLayer.fillColor = UIColor.whiteColor().CGColor 
maskLayer.backgroundColor = UIColor.clearColor().CGColor 
maskLayer.path = roundedPath.CGPath 
self.imageView.layer.mask = maskLayer