Ios 拼贴应用程序的自定义UIView
我正在开发一个拼贴应用程序,我已经成功地构建了简单的拼贴,但现在我被困在如何构建复杂风格的拼贴上,如下图所示Ios 拼贴应用程序的自定义UIView,ios,iphone,swift,uiview,calayer,Ios,Iphone,Swift,Uiview,Calayer,我正在开发一个拼贴应用程序,我已经成功地构建了简单的拼贴,但现在我被困在如何构建复杂风格的拼贴上,如下图所示 如何创建自定义视图,如图中所示,我已尝试使用Beizerpath,并使用Beizerpath的路径对视图应用遮罩,但在将遮罩应用于视图时,我无法向层添加阴影。任何帮助都将不胜感激。我如何才能在图像中准确地创建阴影背后的视图类型?要求某人确切地告诉您如何实现应用程序的功能不适合此网站 使用CAShapeLayers并设置其各种阴影属性(如阴影不透明度、阴影半径、阴影偏移量、阴影颜色和阴影
如何创建自定义视图,如图中所示,我已尝试使用Beizerpath,并使用Beizerpath的路径对视图应用遮罩,但在将遮罩应用于视图时,我无法向层添加阴影。任何帮助都将不胜感激。我如何才能在图像中准确地创建阴影背后的视图类型?要求某人确切地告诉您如何实现应用程序的功能不适合此网站 使用CAShapeLayers并设置其各种阴影属性(如阴影不透明度、阴影半径、阴影偏移量、阴影颜色和阴影路径)来查看阴影
import UIKit
class ViewController: UIViewController {
@IBOutlet var image1: UIImageView! // your image outlet
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func viewDidAppear(_ animated: Bool) {
let trianglePath = UIBezierPath()
trianglePath.move(to: CGPoint(x: 0, y: image1.frame.size.height - 60))
trianglePath.addLine(to: CGPoint(x:0, y: image1.frame.size.height))
trianglePath.addLine(to: CGPoint(x: image1.frame.size.width, y: image1.frame.size.height))
trianglePath.close()
let path = UIBezierPath(rect: view.bounds)
path.append(trianglePath)
let maskLayer = CAShapeLayer()
maskLayer.frame = image1.bounds
maskLayer.fillRule = kCAFillRuleEvenOdd
maskLayer.path = path.cgPath
image1.layer.mask = maskLayer
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
还有更多的形状