如何在viewDidLoad()函数中在iOS swift中绘制一条线?

时间:2016-06-02 16:52:26

标签: swift cgcontext uigraphicscontext

我在viewDidLoad()中尝试绘制绿线时出现以下错误。重要的是我在这里做,因为当它们被放下时它位于新标签之间。错误是:

<Error>: CGContextSetLineWidth: invalid context 0x0. If you want to see 
 the backtrace, 
 please set CG_CONTEXT_SHOW_BACKTRACE environmental variable.

绘制线条的代码如下:

    let context = UIGraphicsGetCurrentContext()
                        CGContextSetLineWidth(context, 3.0)
                        CGContextSetStrokeColorWithColor(context,self.hexStringToUIColor("#008500").CGColor)
                        CGContextMoveToPoint(context, 0,CGFloat(top+40))
                        CGContextAddLineToPoint(context, CGFloat(screenWidth*2), CGFloat(top+40))
                        CGContextStrokePath(context)

1 个答案:

答案 0 :(得分:3)

从评论中可以看出,您只想以编程方式在用户界面中添加一行。为此,只需使用UIView来创建该行。将其backgroundColor设置为您想要的颜色。您为frame指定的高度将是线条的粗细。

// Add a green line with thickness 1, width 200 at location (50, 100)
let line = UIView(frame: CGRect(x: 50, y: 100, width: 200, height: 1))
line.backgroundColor = UIColor.greenColor()
self.view.addSubview(line)