My UIViewController class has an IBOutletCollection containing several IBOutlet objects. I am aware of the need to set retained outlets to nil in viewDidUnload, but do I also need to set the IBOutletCollection to nil? Or should it be released instead in dealloc? Or left alone altogether?
Should IBOutletCollections be set to nil in UIViewController viewDidUnload?
413 views Asked by beaudrykock At
1
There are 1 answers
Related Questions in IOS
- URLSession requesting JSON array from server not working
- Incorrect display of LinearGradientBrush in IOS
- Module not found when building flutter app for IOS
- How to share metadata of an audio url file to a WhatsApp conversation with friends
- Occasional crash at NSURLSessionDataTask dataTaskWithRequest:completionHandler:
- Expo Deep linking on iOS is not working (because of Google sign-in?)
- On iOS, the keyboard does not offer a 6-character SMS code
- Hi, there is an error happened when I build my flutter app, after I'm installing firebase packages occurs that error
- The copy/paste functionalities don't work only on iOS in the Flutter app
- Hide LiveActivityIntent Button from Shortcuts App
- While Running Github Actions Pipeline: No Signing Certificate "iOS Development" found: No "iOS Development" signing certificate matching team ID
- Actionable notification api call not working in background
- Accessibility : Full keyboard access with scroll view in swiftui
- There is a problem with the request entity - You are not allowed to create 'iOS' profile with App ID 'XXXX'
- I am getting "binding has not yet been initialized" error when trying to connect firebase with flutter
Related Questions in UIVIEWCONTROLLER
- Ignoring actions with views in viewDidLoad
- Setup the constrains between the UIView and UIViewController
- Children view controllers must have a common parent view controller in swift
- Adding two UIView vertically
- UICollection view is not rendering properly
- How to delete UINavigationController's space programmatically using Swift?
- AdMob rewardedInterstitial in SwiftUI with UIViewControllerRepresentable . . updateUIViewController triggered too many times
- someone help or explain why the view looks like this and it doesnt take me to the new view controller
- UINavigationController glitchy animation when pushing new view controller
- Background of ViewController disappears for a split second when dismissing a view controller on top of it
- How To: Simple UIViewController w/ .xib using XCode15
- Using NotificationCenter to Pull UIViewController Up After Sending FCMessage
- How to fade up initial root view controller to reveal new background root view controller
- Delegate returning nil even though delegate has been set
- Can't make changes in View from Controller
Related Questions in IBOUTLETCOLLECTION
- not key value coding-compliant in Swift class that extends ObjC subclass with @IBOutletCollection
- Showing/Hiding images in CollectionView Cell
- Swift error "Only instance properties can be declared @IBOutlet"
- swift change @IBoutlet collection images using the .tag not image
- select one item in an outlet collection - swift
- Apply and animate many constraints to outlet collection of uiviews
- How can I use an Outlet Collection with labels and buttons in one collection?
- Change the backgroundcolor of UIButton in IBOutletCollection
- Should I use OutletCollections for setting delegate property of multiple textfields?
- Setting text for uilabel collection from array
- How to make outlet collection of views and change their corner rounded at once?
- Swift: Set properties to an Extension of IBOutletCollection containing UIButtons
- How do I disable individual UIButton (when pressed) under outlet collection?
- UIViewController class with IBOutlet collection still has connections to no longer existing storyboard
- IBOutletCollection collection
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
You need to set your outlets to
nilinviewDidUnloadin order to make sure that as much memory as possible can be released by the view controller when it receives a memory warning. In response to the memory warning, the view controller releases its view in order to free the memory the view (and all its subviews) is using. If you fail to release those outlets that you are retaining/holding a strong reference to, the subviews referenced by those outlets will not be destroyed and their memory won't be freed.So yes, you should also set the property of an outlet collection to
nilinviewDidUnload.This requirement is independent of the responsibility to release all your retained ivars/properties in
dealloc.