Чи є що - небудь схоже на viewDidLoadпро UIViewControllerдля UIView??? Мені потрібно повідомити, як тільки a UIViewзавантажиться (підклас UIView), і виконати деякі дії.
Відповіді:
Залежно від того, який вид дій вам потрібно виконати, існує кілька прийомів:
-(id)initWithFrame:(CGRect)frame- призначений ініціалізатором UIView; завжди надсилається в UIView для його ініціалізації, якщо тільки вигляд не завантажується з перо;-(id)initWithCoder:(NSCoder *)coder - завжди відправляється для ініціалізації UIView кожного разу, коли подання завантажується з перо;-(void)awakeFromNib- відправляється після того, як усі об'єкти в перові ініціалізовані та з'єднані; застосовний лише в тому випадку, якщо ви завантажуєте об’єкт з перо; ви повинні зателефонувати супер;-(void)willMoveToSuperview:(UIView *)newSuperview- надсилається безпосередньо перед тим, як подання буде додано як підпрогляд до іншого представлення; newSuperviewможе бути нульовим, якщо ви видалите подання з його супервигляду;-(void)willMoveToWindow:(UIWindow *)newWindow- надсилається безпосередньо перед тим, як подання (або його суперпрогляд) буде додано у вікно; newWindowможе бути нульовим, якщо ви видалите подання з вікна;-(void)didMoveToSuperview - надсилається відразу після того, як подання вставляється в ієрархію подання;-(void)didMoveToWindow- надсилається відразу після того, як подання отримує властивість вікна. -В основному, ви можете виконати свої дії під час ініціалізації (1 і 2), після завантаження з наконечника (3), до вставки в ієрархію подання (4 і 5) і після цього (6 і 7).
-(void)willMoveToSuperview:(UIView *)newSuperviewбуло ліками від усіх моїх проблем, велике спасибі!