El dibujo de text de iOS en context está claro

Tengo una aplicación simple a la que agregué un gráfico de líneas personalizado. Al dibujar esta tabla en una de mis UIViews, todo está bien, pero cuando agregué el gráfico a una vista simplificada, repentinamente experimento una situación en la que todo el text que dibujo está claro / no está presente.

Hay algunas variables estáticas involucradas debido a la forma en que las animaciones deben manejarse (iOS / Android / Web) en el algorithm, por lo que el ejemplo completo es bastante complejo.

Para explicar esto, agregué un método de dibujo simple al final de mi anulación de CALayer.draw introduzca la descripción de la imagen aquí

  //TEST CODE let box = CGRect(x: 0, y: 0, width: 100, height: 100) let textToDraw = "I AM A TEST" let font = UIFont.boldSystemFont(ofSize: 10) let boxSize = fontSize.space let paragraphStyle = NSMutableParagraphStyle() paragraphStyle.alignment = .right let attrs = [ NSFontAttributeName: font, NSParagraphStyleAttributeName: paragraphStyle, NSForegroundColorAttributeName: UIColor.black ] ctx.setStrokeColor(UIColor.orange.cgColor) ctx.beginPath() ctx.move(to: CGPoint.zero) ctx.addLine(to: CGPoint(x: box.width, y: box.height)) ctx.addLine(to: CGPoint(x: box.origin.x + box.width, y: box.origin.y + box.height)) ctx.strokePath() // print("fontSize:\(fontSize) string:\(textToDraw)") //textToDraw.draw(with: offset , options: .usesLineFragmentOrigin, attributes: attrs, context: nil) textToDraw.draw( in: box, withAttributes: attrs) 

Sin embargo, y esto es frustrante, si visito la vista OTRO donde se dibuja el gráfico (o cualquier otro dibujo personalizado que ocurra) termino con esto: introduzca la descripción de la imagen aquí

Tengo problemas para rastrear esto y tengo un cliente (justificadamente) molesto.

El código para "volver a cargar la vista" es básicamente view.dismiss(animated:true) seguido de performSegue("brokenView")

¿Alguien ha encontrado este comportamiento antes? ¿Hay sugerencias que pueda ofrecer para que el text se adhiera? Estoy en el punto en el que estoy debatiendo la eliminación de una UIView oculta con el dibujo en mi pantalla de inicio para solucionarlo, pero tiene que haber una mejor manera.

Las líneas naranjas se pusieron para verificar que mis "cuadros delimitadores" no estuvieran fuera de la pantalla.

La capa en cuestión es básicamente esta: