2012-11-01 7 views
6

私は写真のコラージュiPhoneアプリで作業していますが、それぞれの形の中に不規則な形のフォトフレームを作成する必要がありますジェスチャーでuiimageview、その形状のために写真を選ぶ必要がある形状、これらのフレームはinstacollage iphoneアプリのフレームに非常に似ています。リンク:https://itunes.apple.com/in/app/instacollage-pro-pic-frame/id530957474?mt=8不規則な形状のuiviewを作成し、instacollage iphoneアプリのような形の中にuiimageviewを配置する方法

このタスクを実行する方法のいくつかの種類を提供します。

ありがとうございました

+0

あなたがUICollectionViewを探している可能性があります。http://www.raywenderlich.com/22324/beginning-uicollectionview-in-ios-6-part-12 – iosMentalist

答えて

2

これを実現するには、レイヤのMaskプロパティを使用できます。

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

ありがとうございます。 Swiftの同等のコードは次のとおりです。

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 
関連する問題