Вызов функции из viewDidAppear () вызывает утечку памяти, но из viewWillLayoutSubiews () не - PullRequest
2 голосов
/ 19 апреля 2020

Я пытаюсь понять, почему та же функция вызывает утечку памяти, если я вызываю ее из viewDidAppear, а не из viewWillLayoutSubiews.

У меня есть два расширения, которые соответствуют подуровням представления его границам:

extension CALayer {
    func fit(rect: CGRect) {
      frame = rect

      sublayers?.forEach { $0.fit(rect: rect) }
    }
}

extension UIView {
  func fitLayers() {
    layer.fit(rect: bounds)
  }
}

И тот же вызов priorityButton.fitLayers() из viewDidAppear не освобождает объекты Layer. Оба выполняют работу, как ожидалось, и работают хорошо, но я хотел бы понять, почему это так.

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...