Ios - 有没有办法在不使用代码的情况下在UIViewController中绘制一条线

时间:2017-01-19 07:48:49

标签: ios swift xcode

我想在不使用代码的情况下在UIViewController中绘制一条线,因此可以在storyboard本身中给出线条的约束。如果有办法,请告诉我。现在我通过在故事板中放置UIView并使用以下代码在其上绘制线来绘制一条线。这是最好的方式吗?或者我有更好的方法吗?提前致谢。

class line: UIView {

    override func draw(_ rect: CGRect) {
        let aPath = UIBezierPath()

        aPath.move(to: CGPoint(x:0, y:1))

        aPath.addLine(to: CGPoint(x:500, y:1))

        //Keep using the method addLineToPoint until you get to the one where about to close the path

        aPath.close()

        //If you want to stroke it with a red color
        UIColor.blue.set()
        aPath.stroke()
        //If you want to fill it as well
        aPath.fill()
    }
}

使用Swift 3.0和Xcode 8.2

2 个答案:

答案 0 :(得分:3)

使用@IBDesignable如下。按照建议的高度建立您的视图,@IBDesignable将在故事板中显示您的行。:

import UIKit

@IBDesignable class line: UIView {

    override func draw(_ rect: CGRect) {
        let aPath = UIBezierPath()
        aPath.move(to: CGPoint(x: 0, y: 1))
        aPath.addLine(to: CGPoint(x: 250, y: 1))
        aPath.close()
        UIColor.blue.set()
        aPath.stroke()
    }
}

答案 1 :(得分:1)

添加高度为1磅的UIView。 为它添加约束。