Я думаю, что проблема, которую вы видите, состоит в том, что viewWillAppear:
- это метод для UIViewController
, а не метод для UIView
. viewWillAppear:
вызывается на контроллере вида, чтобы указать, что вид контроллера станет видимым.
Если вы добавили приведенный выше код в класс на основе UIView
, этот код вызываться не будет. Вам нужно переместить этот код в свой контроллер представления - или вы можете достичь желаемого результата, реализовав вместо этого метод didMoveToSuperview
в своем классе на основе UIView.
didMoveToSuperview
будет вызываться на вашем представлении, когда ваше представление добавляется в другое представление с использованием addSubview:
.