У меня есть несколько CALayers в размещенном представлении слоя.Каждый из этих слоев имеет дополнительные слои для (1) кнопки закрытия и (2) маркера изменения размера.Эти дополнительные «контрольные» слои добавляются в качестве подслоев к родительскому слою.
В настоящее время, когда я масштабирую рабочее пространство, в котором находятся эти слои, все масштабируется, включая эти контрольные слои.Однако я хотел бы предотвратить масштабирование этих управляющих слоев.
Есть ли способ переопределить поведение применения масштабных преобразований, применяемых ко всем подуровням, без необходимости переопределять метод drawInContext: для каждого слоя управления (предположительно, чтобы инвертировать любое существующее преобразование масштаба - при условии, что это возможно) и без необходимости вручную отправлять каждому из этих слоев управления setNeedsDisplay: с каждым увеличением?
Я нашел эту ветку, в которой обсуждается что-то подобное, но обсуждениеидет в направлении CATiledLayers, что здесь не то, что я ищу.
Перерисовка подкласса CALayer при масштабировании суперслоя
Кроме того, этот пост требует несколькосвязанный вопрос, но ответы не относятся к моей ситуации, так как я не могу наложить элементы управления - они должны быть частью иерархии слоев.
Как мне сохранить CALayer
, подуровеньCATiledLayer
, от изменения масштаба после увеличения?