У меня есть подкласс NSView, который рисует серию пунктирных линий. Когда я изменяю размер окна, в котором находится вид, пунктирные линии меняют свои шаблоны. Как я могу предотвратить изменение линий шаблонами при изменении размера окна?
Линии рисуются в следующей функции:
func drawLines(in context: CGContext) {
for line in lines {
context.move(to: line.start)
context.addLine(to: line.end)
context.setLineDash(phase: 0, lengths: [10, 10])
context.strokePath()
}
}
Эта функция вызывается из draw (_:):
override func draw(_ dirtyRect: NSRect) {
guard let context = NSGraphicsContext.current?.cgContext else { return }
drawLines(in: context)
}
При изменении размера окна рисунок линии меняется - иногда эта пунктирная линия выглядит полностью сплошной: