> On Dec 18, 2016, at 2:51 AM, Andreas Falkenhahn <[email protected]> 
> wrote:
> 
> I do not use Interface Builder or Storyboards to create my GUI
> but I do it manually. Currently, I'm setting up all controls
> in viewDidLoad() of my UIViewController.
> 
> So I'm doing stuff like this in viewDidLoad():
> 
>    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
>    ...
>    [self.view addSubview:button];
> 
> The actual positioning is then done in viewDidLayoutSubviews(),
> depending on the device's orientation.
> 
> According to my research, iOS versions before v6 purged views
> on low-memory conditions but AFAIU this is no longer done starting
> with v6. My app targets iOS 8.0 and up so can I rely on viewDidLoad()
> being called only once?
> 
> The reason why I'm asking is that I retain some controls in
> viewDidLoad() because I need them later. I release those controls
> in dealloc(). Now, if viewDidLoad() could be called more than
> once, I'd leak memory. But since viewDidUnload() is deprecated
> anyway, I think it is safe to assume viewDidLoad() is only called
> once because otherwise Apple would have to provide viewDidUnload()
> as well... but still, I'd be glad if somebody could just confirm
> my observations. Thanks.

Assuming you never set a view controller’s view to nil, it is safe to assume 
that viewDidLoad is always called no more than once per view controller 
instance.

> 
> -- 
> Best regards,
> Andreas Falkenhahn                          mailto:[email protected]
> 
> _______________________________________________
> 
> Cocoa-dev mailing list ([email protected])
> 
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
> 
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/cocoa-dev/david.duncan%40apple.com
> 
> This email sent to [email protected]

--
David Duncan


_______________________________________________

Cocoa-dev mailing list ([email protected])

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to