如何快速创建这种形状的视图?

时间:2019-05-28 10:26:56

标签: ios swift core-graphics

如何创建此 2D外观

enter image description here

如何创建它。

非常感谢。

1 个答案:

答案 0 :(得分:3)

尝试一下

class TwoDView : UIView {
    public var xDiff : CGFloat = 5.0
    public var yDiff : CGFloat = 5.0

    override func draw(_ rect: CGRect) {
        let ctx = UIGraphicsGetCurrentContext()

        ctx?.move(to: CGPoint(x: 0, y: rect.height - yDiff))
        ctx?.addLines(between: [
                CGPoint(x: rect.width - xDiff, y: rect.height - yDiff),
                CGPoint(x: rect.width, y: rect.height),
                CGPoint(x: xDiff, y: rect.height),
                CGPoint(x: 0, y: rect.height - yDiff)
            ])
        ctx?.setFillColor(UIColor.black.cgColor)
        ctx?.fillPath()


        ctx?.move(to: CGPoint(x: rect.width - xDiff, y: 0))
        ctx?.addLines(between: [
            CGPoint(x: rect.width, y: yDiff),
            CGPoint(x: rect.width, y: rect.height),
            CGPoint(x: rect.width - xDiff, y: rect.height - yDiff),
            CGPoint(x: rect.width - xDiff, y: 0)
            ])
        ctx?.setFillColor(UIColor.gray.cgColor)
        ctx?.fillPath()


        UIImage(named: "Image")?.draw(in: CGRect(x: 0, y: 0, width: rect.width - xDiff, height: rect.height - yDiff))

    }
}

enter image description here