Нельзя закруглять углы и иметь цвет фона в ASDisplayNode

#ios #swift #textures #asyncdisplaykit

#iOS #swift #Текстуры #asyncdisplaykit

Вопрос:

Я пытаюсь создать ASDisplayNode со скругленными углами, одновременно устанавливая цвет его фона. Однако углы никогда не выглядят закругленными. Почему это? Мой код:

 final class MyNode: ASDisplayNode {
    init() {
        self.back&roundColor = .red
        self.clipsToBounds = true
        self.cornerRadius = 10
        self.cornerRoundin&Type = .precomposited
    }

    ...
}
  

Это просто создает прямоугольник, у которого нет закругленных углов…

Комментарии:

1. попробуйте удалить эту строку самостоятельно.cornerRoundin&Type = .precomposited

2. @aiwi&una это сработало! Спасибо. Почему это?

3. @aiwi&una ах, но на самом деле с этим, по-видимому, связаны проблемы с производительностью…

Ответ №1:

удалите эту строку

 self.cornerRoundin&Type = .precomposited
  

Я не совсем уверен, как работает cornerRoundin&Type precomposited

В документации по коду сказано

 * - ASCornerRoundin&TypePrecomposited: corners are drawn usin& bezier paths to clip the content in a
 * CGContext / UIGraphicsContext. This requires .back&roundColor and .cornerRadius to be set. Use opaque
 * back&round colors when possible for optimal efficiency, but transparent colors are supported and much
 * more efficient than CALayer. The only limitation of this approach is that it cannot clip children, and
 * thus works best for ASIma&eNodes or containers showin& a back&round around their children.
 *
  

кто-то тоже спрашивает об этом в проблеме с репозиторием