From 107b6e3a6ca99bd1fb0f2f55b33662ecfdebaece Mon Sep 17 00:00:00 2001 From: Vinnie Hesener Date: Mon, 23 Oct 2017 20:14:37 -0500 Subject: [PATCH] Version 0.3 - UIBarButtonItem - Documentation typos --- CONTRIBUTING.md | 30 + README.md | 26 +- Supporting/cocoapods/.swift_version | 1 + Supporting/cocoapods/Closures.podspec.json | 23 + Supporting/jazzy/abstracts/UIBarButtonItem.md | 23 + Supporting/jazzy/generate_docs.sh | 7 + Supporting/jazzy/jazzy.yml | 4 +- Xcode/Closures.xcodeproj/project.pbxproj | 8 + Xcode/Closures/Source/Core.swift | 18 +- Xcode/Closures/Source/UIBarButtonItem.swift | 118 ++++ .../ClosuresTests/UIBarButtonItemTests.swift | 49 ++ .../Contents.swift | 24 + .../Resources/BarButtonDemoViewController.xib | 47 ++ .../Sources/Setup.swift | 21 + .../Contents.swift | 4 + .../contents.xcplayground | 3 +- docs/Controllers.html | 5 +- docs/Controls.html | 28 +- docs/Extensions/UIBarButtonItem.html | 525 ++++++++++++++++++ docs/Extensions/UIButton.html | 5 +- docs/Extensions/UICollectionView.html | 5 +- docs/Extensions/UIControl.html | 5 +- docs/Extensions/UIDatePicker.html | 5 +- docs/Extensions/UIGestureRecognizer.html | 5 +- docs/Extensions/UIImagePickerController.html | 7 +- .../UIImagePickerController/MediaFilter.html | 11 +- .../UIImagePickerController/Result.html | 11 +- .../UILongPressGestureRecognizer.html | 5 +- docs/Extensions/UIPageControl.html | 5 +- docs/Extensions/UIPanGestureRecognizer.html | 5 +- docs/Extensions/UIPickerView.html | 5 +- docs/Extensions/UIPinchGestureRecognizer.html | 5 +- .../UIRotationGestureRecognizer.html | 5 +- .../UIScreenEdgePanGestureRecognizer.html | 5 +- docs/Extensions/UIScrollView.html | 5 +- docs/Extensions/UISegmentedControl.html | 5 +- docs/Extensions/UISlider.html | 5 +- docs/Extensions/UIStepper.html | 5 +- docs/Extensions/UISwipeGestureRecognizer.html | 5 +- docs/Extensions/UISwitch.html | 5 +- docs/Extensions/UITableView.html | 5 +- docs/Extensions/UITapGestureRecognizer.html | 5 +- docs/Extensions/UITextField.html | 5 +- docs/Extensions/UIView.html | 5 +- .../_5FKeyValueCodingAndObserving.html | 5 +- docs/Gesture Recognizers.html | 5 +- docs/KVO.html | 5 +- docs/Scrolling Views.html | 5 +- .../Resources/Documents/Controllers.html | 5 +- .../Resources/Documents/Controls.html | 28 +- .../Documents/Extensions/UIBarButtonItem.html | 525 ++++++++++++++++++ .../Documents/Extensions/UIButton.html | 5 +- .../Extensions/UICollectionView.html | 5 +- .../Documents/Extensions/UIControl.html | 5 +- .../Documents/Extensions/UIDatePicker.html | 5 +- .../Extensions/UIGestureRecognizer.html | 5 +- .../Extensions/UIImagePickerController.html | 7 +- .../UIImagePickerController/MediaFilter.html | 11 +- .../UIImagePickerController/Result.html | 11 +- .../UILongPressGestureRecognizer.html | 5 +- .../Documents/Extensions/UIPageControl.html | 5 +- .../Extensions/UIPanGestureRecognizer.html | 5 +- .../Documents/Extensions/UIPickerView.html | 5 +- .../Extensions/UIPinchGestureRecognizer.html | 5 +- .../UIRotationGestureRecognizer.html | 5 +- .../UIScreenEdgePanGestureRecognizer.html | 5 +- .../Documents/Extensions/UIScrollView.html | 5 +- .../Extensions/UISegmentedControl.html | 5 +- .../Documents/Extensions/UISlider.html | 5 +- .../Documents/Extensions/UIStepper.html | 5 +- .../Extensions/UISwipeGestureRecognizer.html | 5 +- .../Documents/Extensions/UISwitch.html | 5 +- .../Documents/Extensions/UITableView.html | 5 +- .../Extensions/UITapGestureRecognizer.html | 5 +- .../Documents/Extensions/UITextField.html | 5 +- .../Documents/Extensions/UIView.html | 5 +- .../_5FKeyValueCodingAndObserving.html | 5 +- .../Documents/Gesture Recognizers.html | 5 +- .../Contents/Resources/Documents/KVO.html | 5 +- .../Resources/Documents/Scrolling Views.html | 5 +- .../Contents/Resources/Documents/index.html | 9 +- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 86016 -> 90112 bytes docs/docsets/Closures.tgz | Bin 112172 -> 114653 bytes docs/index.html | 9 +- docs/search.json | 2 +- 86 files changed, 1762 insertions(+), 100 deletions(-) create mode 100644 CONTRIBUTING.md create mode 100644 Supporting/cocoapods/.swift_version create mode 100644 Supporting/cocoapods/Closures.podspec.json create mode 100644 Supporting/jazzy/abstracts/UIBarButtonItem.md create mode 100755 Supporting/jazzy/generate_docs.sh create mode 100644 Xcode/Closures/Source/UIBarButtonItem.swift create mode 100644 Xcode/ClosuresTests/UIBarButtonItemTests.swift create mode 100644 Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Contents.swift create mode 100644 Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Resources/BarButtonDemoViewController.xib create mode 100644 Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Sources/Setup.swift create mode 100644 docs/Extensions/UIBarButtonItem.html create mode 100644 docs/docsets/Closures.docset/Contents/Resources/Documents/Extensions/UIBarButtonItem.html diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..8b8a743 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,30 @@ +The following rules generally apply for PRs and code changes: + +**Submit Pull Requests to the `develop` branch** + +This is where all experimental and other beta-ish features will go. +`develop` will collect many new features until a release is planned. At a point where a stable release is ready, +`develop` branch will then be merged into `master` and a release tag will be generated for the general public. + +**Markdown documentation and header-level comment changes need to run Jazzy** + +If making a change to the documentation or changes inside of method/property quick look comments, +[Jazzy](https://github.com/realm/jazzy) needs to be run. Please install Jazzy and run the following +Terminal command from the Supporting/jazzy directory: + +`./generate_docs.sh` + +**Blend with existing patterns** + +If, for instance, you are contributing by adding another +[Closure API](https://github.com/vhesener/Closures/issues?q=is%3Aissue+is%3Aopen+label%3A%22Closure+API+Request%22) +and that API has a precedent for implementation, it is best to mimic the existing precedent's pattern. +If however, you think both the new API and it's counterparts could use improvements, let's definitely +discuss how to update all of the existing APIs as well. + +Let's take a simple example of adding a new API for a delegate protocol. The following is almost universal: + +- [x] Use the Delegate/Delegator wrapper mechanism used by other delegate APIs +- [x] Unit tests to make sure all delegate methods are covered +- [x] Documentation on any public initializers, methods, or properties +- [x] Playground example showing how to use it, along with explanations diff --git a/README.md b/README.md index 69b96dc..35eb425 100644 --- a/README.md +++ b/README.md @@ -64,17 +64,17 @@ pickerView.addStrings(myStrings) { title, component, row in *** ### **Daisy Chaining** -Almost all convenience methods allow for the use of [daisy chaining](https://en.wikipedia.org/wiki/Method_chaining). This allows us to have some nice syntax sugar while implementing optional delegate methods in a consise way. Using [UITextField](https://vhesener.github.io/Closures/Extensions/UITextField.html) as an example, we can organize and visualize all of the `UITextFieldDelegate` behavior. +Almost all convenience methods allow for the use of [daisy chaining](https://en.wikipedia.org/wiki/Method_chaining). This allows us to have some nice syntax sugar while implementing optional delegate methods in a concise way. Using [UITextField](https://vhesener.github.io/Closures/Extensions/UITextField.html) as an example, we can organize and visualize all of the `UITextFieldDelegate` behavior. ```swift textField - .didBeginEditing { - // UITextField did begin editing code - }.shouldClear { + .didBeginEditing { + // UITextField did begin editing code + }.shouldClear { true - }.shouldChangeCharacters { range, string in - // some custom character change code - return false + }.shouldChangeCharacters { range, string in + // some custom character change code + return false } ``` *** @@ -113,7 +113,7 @@ These two [UIImagePickerController](https://vhesener.github.io/Closures/Extensio ```swift UIImagePickerController(source: .camera, allow: .image) { result, picker in - myImageView.image = result.editedImage + myImageView.image = result.editedImage }.present(from: self) ``` ```swift @@ -121,10 +121,10 @@ let pickerController = UIImagePickerController() pickerController.sourceType = .camera pickerController.mediaTypes = [kUTTypeImage] pickerController.didFinishPickingMedia { [weak self] info in - myImageView.image = info[UIImagePickerControllerEditedImage] as? UIImage - self?.dismiss(animated: true) + myImageView.image = info[UIImagePickerControllerEditedImage] as? UIImage + self?.dismiss(animated: true) }.didCancel { [weak self] in - self?.dismiss(animated: true) + self?.dismiss(animated: true) } self.present(pickerController, animated: true) ``` @@ -184,7 +184,7 @@ constraints: There are many reasons for this, but mostly because * It was arbitrarily challenging. * It was in the spirit of Swift. -* Create a scalable mechanism to easily add addtional closure wrappers in the future. +* Create a scalable mechanism to easily add additional closure wrappers in the future. It is our goal to become irrelevant via [sherlock](http://www.urbandictionary.com/define.php?term=sherlocked). In addition to not having to support this library anymore, it would actually be flattering @@ -219,4 +219,4 @@ NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPO NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -``` \ No newline at end of file +``` diff --git a/Supporting/cocoapods/.swift_version b/Supporting/cocoapods/.swift_version new file mode 100644 index 0000000..389f774 --- /dev/null +++ b/Supporting/cocoapods/.swift_version @@ -0,0 +1 @@ +4.0 \ No newline at end of file diff --git a/Supporting/cocoapods/Closures.podspec.json b/Supporting/cocoapods/Closures.podspec.json new file mode 100644 index 0000000..39949c1 --- /dev/null +++ b/Supporting/cocoapods/Closures.podspec.json @@ -0,0 +1,23 @@ +{ + "name": "Closures", + "version": "0.3", + "summary": "Swifty closures for UIKit and Foundation", + "homepage": "https://github.com/vhesener/Closures", + "screenshots": [ + "https://raw.githubusercontent.com/vhesener/Closures/assets/assets/playground_general.gif", + "https://raw.githubusercontent.com/vhesener/Closures/assets/assets/reference_large.png" + ], + "license": "MIT", + "authors": "Vinnie Hesener", + "platforms": { + "ios": "9.0" + }, + "source": { + "git": "https://github.com/vhesener/Closures.git", + "tag": "v0.3" + }, + "swift_version": "4.0", + "source_files": "Xcode/Closures/Source", + "documentation_url": "https://vhesener.github.io/Closures/", + "description": "Closures is an iOS Framework that adds closure handlers to many of the popular\nUIKit and Foundation classes. Although this framework is a substitute for \nsome Cocoa Touch design patterns, such as Delegation and Data Sources, and \nTarget-Action, the authors make no claim regarding which is a better way to \naccomplish the same type of task. Most of the time it is a matter of style, \npreference, or convenience that will determine if any of these closure extensions \nare beneficial.\n\nWhether you’re a functional purist, dislike a particular API, or simply just \nwant to organize your code a little bit, you might enjoy using this library." +} \ No newline at end of file diff --git a/Supporting/jazzy/abstracts/UIBarButtonItem.md b/Supporting/jazzy/abstracts/UIBarButtonItem.md new file mode 100644 index 0000000..3d3696e --- /dev/null +++ b/Supporting/jazzy/abstracts/UIBarButtonItem.md @@ -0,0 +1,23 @@ +`Closures` framework adds closures for `UIBarButtonItem` tap events, usually +found in a UINavigationBar. + +All initializers that support the target-action pattern now have an equivalent +initialier that contains a `handler` parameter. + +```swift +navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Left item", style: .plain) { + // left bar button item tapped +} +``` + +To add the closure handler to an existing `UIBarButtonItem`, simply call the +`onTap(handler:)` method. For instance, if you created your button +in a storyboard, you could call the following in your `viewDidLoad` method. + +```swift +let myRightBarButton = navigationItem.rightBarButtonItem! +myRightBarButton.onTap { + // right bar button item tapped +} +``` + diff --git a/Supporting/jazzy/generate_docs.sh b/Supporting/jazzy/generate_docs.sh new file mode 100755 index 0000000..7f3d006 --- /dev/null +++ b/Supporting/jazzy/generate_docs.sh @@ -0,0 +1,7 @@ +jazzy --config jazzy.yml; + +## Have to create this exception in order to have underscores in a class name +## display in the github documentation generator +echo "include: + - \"_5FKeyValueCodingAndObserving.html\" + " > ../../docs/_config.yml \ No newline at end of file diff --git a/Supporting/jazzy/jazzy.yml b/Supporting/jazzy/jazzy.yml index f9f5a1f..76dc0df 100644 --- a/Supporting/jazzy/jazzy.yml +++ b/Supporting/jazzy/jazzy.yml @@ -11,7 +11,8 @@ hide_documentation_coverage: true use_safe_filenames: true readme: "../../README.md" module: Closures -abstract: "../Supporting/jazzy/abstracts/*.md" +abstract: "abstracts/*.md" +source_directory: "../../Xcode" custom_categories: - name: Controls children: @@ -24,6 +25,7 @@ custom_categories: - UIStepper - UISlider - UIControl + - UIBarButtonItem - name: Scrolling Views children: - UITableView diff --git a/Xcode/Closures.xcodeproj/project.pbxproj b/Xcode/Closures.xcodeproj/project.pbxproj index ac99f68..2b718b9 100644 --- a/Xcode/Closures.xcodeproj/project.pbxproj +++ b/Xcode/Closures.xcodeproj/project.pbxproj @@ -25,6 +25,8 @@ 3F7620EF1D849B5000E17BF5 /* Closures.h in Headers */ = {isa = PBXBuildFile; fileRef = 3F7620E11D849B5000E17BF5 /* Closures.h */; settings = {ATTRIBUTES = (Public, ); }; }; 3FB42D941F01A97700740CB0 /* UIImagePickerControllerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FB42D931F01A97700740CB0 /* UIImagePickerControllerTests.swift */; }; 3FB77F311EE4DB5200C60F5C /* UITableViewTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FB77F301EE4DB5200C60F5C /* UITableViewTests.swift */; }; + 3FD393C61F9E583900DA155D /* UIBarButtonItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FD393C51F9E583900DA155D /* UIBarButtonItem.swift */; }; + 3FD393C81F9E61A900DA155D /* UIBarButtonItemTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FD393C71F9E61A900DA155D /* UIBarButtonItemTests.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -59,6 +61,8 @@ 3F7620EE1D849B5000E17BF5 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 3FB42D931F01A97700740CB0 /* UIImagePickerControllerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIImagePickerControllerTests.swift; sourceTree = ""; }; 3FB77F301EE4DB5200C60F5C /* UITableViewTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UITableViewTests.swift; sourceTree = ""; }; + 3FD393C51F9E583900DA155D /* UIBarButtonItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIBarButtonItem.swift; sourceTree = ""; }; + 3FD393C71F9E61A900DA155D /* UIBarButtonItemTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIBarButtonItemTests.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -88,6 +92,7 @@ 3F59C56A1F1C32AA00945666 /* UICollectionView.swift */, 3F59C56B1F1C32AA00945666 /* UIControl.swift */, 3F59C56C1F1C32AA00945666 /* UIGestureRecognizer.swift */, + 3FD393C51F9E583900DA155D /* UIBarButtonItem.swift */, 3F59C56D1F1C32AA00945666 /* UIImagePickerController.swift */, 3F59C56E1F1C32AA00945666 /* UIPickerView.swift */, 3F59C56F1F1C32AA00945666 /* UIScrollView.swift */, @@ -127,6 +132,7 @@ 3F7620EB1D849B5000E17BF5 /* ClosuresTests */ = { isa = PBXGroup; children = ( + 3FD393C71F9E61A900DA155D /* UIBarButtonItemTests.swift */, 3FB42D931F01A97700740CB0 /* UIImagePickerControllerTests.swift */, 3F55FC3C1EFD6D5E001ED560 /* UIPickerViewTests.swift */, 3F1F3D211EF8E54300A62BF2 /* UIGestureRecognizerTests.swift */, @@ -257,6 +263,7 @@ 3F59C5751F1C32BF00945666 /* UIGestureRecognizer.swift in Sources */, 3F59C5711F1C32BF00945666 /* Core.swift in Sources */, 3F59C5791F1C32BF00945666 /* UITableView.swift in Sources */, + 3FD393C61F9E583900DA155D /* UIBarButtonItem.swift in Sources */, 3F59C5781F1C32BF00945666 /* UIScrollView.swift in Sources */, 3F59C5761F1C32BF00945666 /* UIImagePickerController.swift in Sources */, 3F59C5771F1C32BF00945666 /* UIPickerView.swift in Sources */, @@ -273,6 +280,7 @@ 3F1F3D221EF8E54300A62BF2 /* UIGestureRecognizerTests.swift in Sources */, 3F7620ED1D849B5000E17BF5 /* UIControlTests.swift in Sources */, 3FB77F311EE4DB5200C60F5C /* UITableViewTests.swift in Sources */, + 3FD393C81F9E61A900DA155D /* UIBarButtonItemTests.swift in Sources */, 3F5B9E411F0003C500B8555C /* KVOTests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/Xcode/Closures/Source/Core.swift b/Xcode/Closures/Source/Core.swift index db24cf8..5795bb9 100644 --- a/Xcode/Closures/Source/Core.swift +++ b/Xcode/Closures/Source/Core.swift @@ -105,12 +105,28 @@ extension NotificationCenter { func selfObserve(name: Notification.Name, target: T, closure: @escaping (_ target: T, _ userInfo: [AnyHashable : Any]?) -> Void) where T: AnyObject { + + // Post a cleanup notification to remove any duplicates + let cleanupKey = "com.vhesener.notificationkey.selfobserved.cleanup" + post(name: name, object: target, userInfo: [cleanupKey: target]) + var observer: NSObjectProtocol? observer = addObserver( forName: name, + // Can't use the object for this parameter. Since the object + // is the one sending the post, it will never clean up. The observer + // will always stay in the notification center and I'm not sure of + // the concequences of that yet. object: nil, queue: nil) { [weak target, weak self] in - // Cleanup opportunity for this notification name. + // Cleanup any notification with this name;target combo + if let cleanupTarget = $0.userInfo?[cleanupKey] as? T { + if cleanupTarget === target, + $0.name == name { + self?.removeObserver(observer!) + } + return + } // Remove if target is nil (target-action on self is fruitless) guard let target = target else { self?.removeObserver(observer!) diff --git a/Xcode/Closures/Source/UIBarButtonItem.swift b/Xcode/Closures/Source/UIBarButtonItem.swift new file mode 100644 index 0000000..a620791 --- /dev/null +++ b/Xcode/Closures/Source/UIBarButtonItem.swift @@ -0,0 +1,118 @@ +/** + The MIT License (MIT) + Copyright (c) 2017 Vincent Hesener + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and + associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software + is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT + NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +import UIKit + +/// :nodoc: +private let jzyBug = 0 // Prevent the license header from showing up in Jazzy Docs for UICollectionView + +public extension UIBarButtonItem { + /** + A convenience initializer for a UIBarButtonItem so that the tap event can + be handled with a closure. This is equivalent of using the init(image:style:target:action:) + initializer. + + * parameter image: The image to use for the button + * parameter style: The `UIBarButtonItemStyle` of the button + * parameter handler: The closure that is called when the button is tapped + */ + public convenience init(image: UIImage?, style: UIBarButtonItemStyle, handler: @escaping () -> Void) { + self.init(image: image, style: style, target: nil, action: nil) + onTap(handler: handler) + } + + /** + A convenience initializer for a UIBarButtonItem so that the tap event can + be handled with a closure. This is equivalent of using the init(image:landscapeImagePhone:style:target:action:) + initializer. + + * parameter image: The image to use for the button + * parameter landscapeImagePhone: The image to use for the compressed landscape bar item + * parameter style: The `UIBarButtonItemStyle` of the button + * parameter handler: The closure that is called when the button is tapped + */ + @available(iOS 5.0, *) + public convenience init(image: UIImage?, landscapeImagePhone: UIImage?, style: UIBarButtonItemStyle, handler: @escaping () -> Void) { + self.init(image: image, landscapeImagePhone: landscapeImagePhone, style: style, target: nil, action: nil) + onTap(handler: handler) + } + + /** + A convenience initializer for a UIBarButtonItem so that the tap event can + be handled with a closure. This is equivalent of using the init(title:style:target:action:) + initializer. + + * parameter title: The text to use for the button + * parameter style: The `UIBarButtonItemStyle` of the button + * parameter handler: The closure that is called when the button is tapped + */ + public convenience init(title: String?, style: UIBarButtonItemStyle, handler: @escaping () -> Void) { + self.init(title: title, style: style, target: nil, action: nil) + onTap(handler: handler) + } + + /** + A convenience initializer for a UIBarButtonItem so that the tap event can + be handled with a closure. This is equivalent of using the init(barButtonSystemItem:target:action:) + initializer. + + * parameter barButtonSystemItem: The `UIBarButtonSystemItem` to be used for the button + * parameter handler: The closure that is called when the button is tapped + */ + public convenience init(barButtonSystemItem systemItem: UIBarButtonSystemItem, handler: @escaping () -> Void) { + self.init(barButtonSystemItem: systemItem, target: nil, action: nil) + onTap(handler: handler) + } + + /** + This method is a convenience method to add a closure handler to a `UIBarButtonItem`. + Use this method if you are creating a `UIBarButtonItem` using an initializer + other than the convience ones provide, or if the item was created by a + Storyboard or xib. + + * * * * + #### An example that adds a closure handler to an existing `UIBarButtonItem`: + + ```swift + myBarButtonItem.onTap { + // bar button tapped code + } + ``` + + * parameter handler: The closure that will be called when the tap is recognized. + */ + public func onTap(handler: @escaping () -> Void) { + target = self + action = #selector(UIBarButtonItem.buttonTapped) + NotificationCenter.selfObserve(name: .barButtonItemTapped, target: self) { button, userInfo in + handler() + } + } +} + +fileprivate extension UIBarButtonItem { + @objc func buttonTapped() { + NotificationCenter.closures.post(name: .barButtonItemTapped, object: self) + } +} + +fileprivate extension Notification.Name { + static let barButtonItemTapped = Notification.Name("UIBarButtonItem.tapped") +} diff --git a/Xcode/ClosuresTests/UIBarButtonItemTests.swift b/Xcode/ClosuresTests/UIBarButtonItemTests.swift new file mode 100644 index 0000000..7a9c768 --- /dev/null +++ b/Xcode/ClosuresTests/UIBarButtonItemTests.swift @@ -0,0 +1,49 @@ +/** + The MIT License (MIT) + Copyright (c) 2017 Vincent Hesener + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and + associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software + is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT + NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +import XCTest +@testable import Closures + +class UIBarButtonItemTests: XCTestCase { + func testTargetActionInitializers() { + let exp = expectation(description: "Not all initializers handled") + exp.expectedFulfillmentCount = 4 + let handler = { exp.fulfill() } + let buttons = [ + UIBarButtonItem(image: nil, style: .plain, handler: handler), + UIBarButtonItem(image: nil, landscapeImagePhone: nil, style: .plain, handler: handler), + UIBarButtonItem(title: nil, style: .plain, handler: handler), + UIBarButtonItem(barButtonSystemItem: .action, handler: handler)] + + buttons.forEach { + _ = $0.target!.perform($0.action) + } + waitForExpectations(timeout: 0.2) + } + + func testCleanup() { + let button = UIBarButtonItem(barButtonSystemItem: .action) { + XCTAssert(false, "Closures are being added, not replaced") + } + button.onTap { + } + NotificationCenter.closures.post(name: Notification.Name("UIBarButtonItem.tapped"), object: button) + } +} diff --git a/Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Contents.swift b/Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Contents.swift new file mode 100644 index 0000000..f40366f --- /dev/null +++ b/Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Contents.swift @@ -0,0 +1,24 @@ +import UIKit;import PlaygroundSupport;PlaygroundPage.current.liveView = navController +import Closures +//: [Go back](@previous) +/*: + # UIBarButtonItem + + `Closures` framework adds closures for `UIBarButtonItem` tap events, usually + found in a UINavigationBar. + + All initializers that support the target-action pattern now have an equivalent + initialier that contains a `handler` parameter. + */ +navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Left item", style: .plain) { + log("left item tapped") +} +/*: + To add the closure handler to an existing `UIBarButtonItem`, simply call the + `onTap(handler:)` method. For instance, if you created your button + in a storyboard, you could call the following in your `viewDidLoad` method. + */ +let myRightBarButton = navigationItem.rightBarButtonItem! +myRightBarButton.onTap { + log("right item tapped") +} diff --git a/Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Resources/BarButtonDemoViewController.xib b/Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Resources/BarButtonDemoViewController.xib new file mode 100644 index 0000000..35b0197 --- /dev/null +++ b/Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Resources/BarButtonDemoViewController.xib @@ -0,0 +1,47 @@ + + + + + + + + + + + + Courier + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Sources/Setup.swift b/Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Sources/Setup.swift new file mode 100644 index 0000000..d41aca6 --- /dev/null +++ b/Xcode/Playground/ClosuresDemo.playground/Pages/UIBarButtonItem.xcplaygroundpage/Sources/Setup.swift @@ -0,0 +1,21 @@ +import UIKit +import PlaygroundSupport + +public class BarButtonDemoViewController: BaseViewController, PrintableController { + @IBOutlet public var printableTextView: UITextView? + + open override func viewDidLoad() { + super.viewDidLoad() + // supposed to simulate a button item created from a xib/storyboard + navigationItem.rightBarButtonItem = UIBarButtonItem(title: "Right item", style: .plain, target: nil, action: nil) + } +} + +public let viewController = BarButtonDemoViewController(nibName: "BarButtonDemoViewController", bundle: nil) +public let navController = UINavigationController(rootViewController: viewController) +public let navigationItem = viewController.navigationItem + +public func log(_ string: String) { + viewController.print(text: string) + print(string) +} diff --git a/Xcode/Playground/ClosuresDemo.playground/Pages/UIImagePickerController.xcplaygroundpage/Contents.swift b/Xcode/Playground/ClosuresDemo.playground/Pages/UIImagePickerController.xcplaygroundpage/Contents.swift index 67fdb99..f5adb97 100644 --- a/Xcode/Playground/ClosuresDemo.playground/Pages/UIImagePickerController.xcplaygroundpage/Contents.swift +++ b/Xcode/Playground/ClosuresDemo.playground/Pages/UIImagePickerController.xcplaygroundpage/Contents.swift @@ -42,3 +42,7 @@ import Closures }.present(from: self) ``` */ + +//: * * * * +//: [Click here to explore using **UIBarButtonItem** closures](@next) +//: * * * * diff --git a/Xcode/Playground/ClosuresDemo.playground/contents.xcplayground b/Xcode/Playground/ClosuresDemo.playground/contents.xcplayground index 10242dd..7608192 100644 --- a/Xcode/Playground/ClosuresDemo.playground/contents.xcplayground +++ b/Xcode/Playground/ClosuresDemo.playground/contents.xcplayground @@ -1,5 +1,5 @@ - + @@ -8,5 +8,6 @@ + \ No newline at end of file diff --git a/docs/Controllers.html b/docs/Controllers.html index 2d61a0c..47678cf 100644 --- a/docs/Controllers.html +++ b/docs/Controllers.html @@ -57,6 +57,9 @@ + + +
+ +
diff --git a/docs/Extensions/UIBarButtonItem.html b/docs/Extensions/UIBarButtonItem.html new file mode 100644 index 0000000..fcb17c3 --- /dev/null +++ b/docs/Extensions/UIBarButtonItem.html @@ -0,0 +1,525 @@ + + + + UIBarButtonItem Extension Reference + + + + + + + + + + +
+ +
+
+ +
+
+ +
+
+
+

UIBarButtonItem

+

Closures framework adds closures for UIBarButtonItem tap events, usually +found in a UINavigationBar.

+ +

All initializers that support the target-action pattern now have an equivalent +initialier that contains a handler parameter.

+
navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Left item", style: .plain) {
+    // left bar button item tapped
+}
+
+ +

To add the closure handler to an existing UIBarButtonItem, simply call the +onTap(handler:) method. For instance, if you created your button +in a storyboard, you could call the following in your viewDidLoad method.

+
let myRightBarButton = navigationItem.rightBarButtonItem!
+myRightBarButton.onTap {
+    // right bar button item tapped
+}
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    A convenience initializer for a UIBarButtonItem so that the tap event can +be handled with a closure. This is equivalent of using the init(image:style:target:action:) +initializer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(image: UIImage?, style: UIBarButtonItemStyle, handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + image + + +
    +

    The image to use for the button

    +
    +
    + + style + + +
    +

    The UIBarButtonItemStyle of the button

    +
    +
    + + handler + + +
    +

    The closure that is called when the button is tapped

    +
    +
    +
    +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A convenience initializer for a UIBarButtonItem so that the tap event can +be handled with a closure. This is equivalent of using the init(image:landscapeImagePhone:style:target:action:) +initializer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(image: UIImage?, landscapeImagePhone: UIImage?, style: UIBarButtonItemStyle, handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + image + + +
    +

    The image to use for the button

    +
    +
    + + landscapeImagePhone + + +
    +

    The image to use for the compressed landscape bar item

    +
    +
    + + style + + +
    +

    The UIBarButtonItemStyle of the button

    +
    +
    + + handler + + +
    +

    The closure that is called when the button is tapped

    +
    +
    +
    +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A convenience initializer for a UIBarButtonItem so that the tap event can +be handled with a closure. This is equivalent of using the init(title:style:target:action:) +initializer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(title: String?, style: UIBarButtonItemStyle, handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + title + + +
    +

    The text to use for the button

    +
    +
    + + style + + +
    +

    The UIBarButtonItemStyle of the button

    +
    +
    + + handler + + +
    +

    The closure that is called when the button is tapped

    +
    +
    +
    +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A convenience initializer for a UIBarButtonItem so that the tap event can +be handled with a closure. This is equivalent of using the init(barButtonSystemItem:target:action:) +initializer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(barButtonSystemItem systemItem: UIBarButtonSystemItem, handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + barButtonSystemItem + + +
    +

    The UIBarButtonSystemItem to be used for the button

    +
    +
    + + handler + + +
    +

    The closure that is called when the button is tapped

    +
    +
    +
    +
    +
    +
  • +
  • +
    + + + + onTap(handler:) + +
    +
    +
    +
    +
    +
    +

    This method is a convenience method to add a closure handler to a UIBarButtonItem. +Use this method if you are creating a UIBarButtonItem using an initializer +other than the convience ones provide, or if the item was created by a +Storyboard or xib.

    + +
    +

    An example that adds a closure handler to an existing UIBarButtonItem:

    +
    myBarButtonItem.onTap {
    +    // bar button tapped code
    +}
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onTap(handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + handler + + +
    +

    The closure that will be called when the tap is recognized.

    +
    +
    +
    +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/docs/Extensions/UIButton.html b/docs/Extensions/UIButton.html index 5c5ea6b..f9be644 100644 --- a/docs/Extensions/UIButton.html +++ b/docs/Extensions/UIButton.html @@ -58,6 +58,9 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
diff --git a/docs/docsets/Closures.docset/Contents/Resources/Documents/Extensions/UIBarButtonItem.html b/docs/docsets/Closures.docset/Contents/Resources/Documents/Extensions/UIBarButtonItem.html new file mode 100644 index 0000000..fcb17c3 --- /dev/null +++ b/docs/docsets/Closures.docset/Contents/Resources/Documents/Extensions/UIBarButtonItem.html @@ -0,0 +1,525 @@ + + + + UIBarButtonItem Extension Reference + + + + + + + + + + +
+ +
+
+ +
+
+ +
+
+
+

UIBarButtonItem

+

Closures framework adds closures for UIBarButtonItem tap events, usually +found in a UINavigationBar.

+ +

All initializers that support the target-action pattern now have an equivalent +initialier that contains a handler parameter.

+
navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Left item", style: .plain) {
+    // left bar button item tapped
+}
+
+ +

To add the closure handler to an existing UIBarButtonItem, simply call the +onTap(handler:) method. For instance, if you created your button +in a storyboard, you could call the following in your viewDidLoad method.

+
let myRightBarButton = navigationItem.rightBarButtonItem!
+myRightBarButton.onTap {
+    // right bar button item tapped
+}
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    A convenience initializer for a UIBarButtonItem so that the tap event can +be handled with a closure. This is equivalent of using the init(image:style:target:action:) +initializer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(image: UIImage?, style: UIBarButtonItemStyle, handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + image + + +
    +

    The image to use for the button

    +
    +
    + + style + + +
    +

    The UIBarButtonItemStyle of the button

    +
    +
    + + handler + + +
    +

    The closure that is called when the button is tapped

    +
    +
    +
    +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A convenience initializer for a UIBarButtonItem so that the tap event can +be handled with a closure. This is equivalent of using the init(image:landscapeImagePhone:style:target:action:) +initializer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(image: UIImage?, landscapeImagePhone: UIImage?, style: UIBarButtonItemStyle, handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + image + + +
    +

    The image to use for the button

    +
    +
    + + landscapeImagePhone + + +
    +

    The image to use for the compressed landscape bar item

    +
    +
    + + style + + +
    +

    The UIBarButtonItemStyle of the button

    +
    +
    + + handler + + +
    +

    The closure that is called when the button is tapped

    +
    +
    +
    +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A convenience initializer for a UIBarButtonItem so that the tap event can +be handled with a closure. This is equivalent of using the init(title:style:target:action:) +initializer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(title: String?, style: UIBarButtonItemStyle, handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + title + + +
    +

    The text to use for the button

    +
    +
    + + style + + +
    +

    The UIBarButtonItemStyle of the button

    +
    +
    + + handler + + +
    +

    The closure that is called when the button is tapped

    +
    +
    +
    +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A convenience initializer for a UIBarButtonItem so that the tap event can +be handled with a closure. This is equivalent of using the init(barButtonSystemItem:target:action:) +initializer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(barButtonSystemItem systemItem: UIBarButtonSystemItem, handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + barButtonSystemItem + + +
    +

    The UIBarButtonSystemItem to be used for the button

    +
    +
    + + handler + + +
    +

    The closure that is called when the button is tapped

    +
    +
    +
    +
    +
    +
  • +
  • +
    + + + + onTap(handler:) + +
    +
    +
    +
    +
    +
    +

    This method is a convenience method to add a closure handler to a UIBarButtonItem. +Use this method if you are creating a UIBarButtonItem using an initializer +other than the convience ones provide, or if the item was created by a +Storyboard or xib.

    + +
    +

    An example that adds a closure handler to an existing UIBarButtonItem:

    +
    myBarButtonItem.onTap {
    +    // bar button tapped code
    +}
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onTap(handler: @escaping () -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + handler + + +
    +

    The closure that will be called when the tap is recognized.

    +
    +
    +
    +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/docs/docsets/Closures.docset/Contents/Resources/Documents/Extensions/UIButton.html b/docs/docsets/Closures.docset/Contents/Resources/Documents/Extensions/UIButton.html index 5c5ea6b..f9be644 100644 --- a/docs/docsets/Closures.docset/Contents/Resources/Documents/Extensions/UIButton.html +++ b/docs/docsets/Closures.docset/Contents/Resources/Documents/Extensions/UIButton.html @@ -58,6 +58,9 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + -
  • Create a scalable mechanism to easily add addtional closure wrappers in the future.
  • +
  • Create a scalable mechanism to easily add additional closure wrappers in the future.
  • It is our goal to become irrelevant via sherlock. @@ -345,7 +348,7 @@

    License diff --git a/docs/docsets/Closures.docset/Contents/Resources/Documents/search.json b/docs/docsets/Closures.docset/Contents/Resources/Documents/search.json index 29321a5..f36cd1a 100644 --- a/docs/docsets/Closures.docset/Contents/Resources/Documents/search.json +++ b/docs/docsets/Closures.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Extensions/_5FKeyValueCodingAndObserving.html#/s:10Foundation27_KeyValueCodingAndObservingP8ClosuresE7observeAA05NSKeyC11ObservationCs0B4PathCyxqd__G_SC0icF7OptionsV7optionsSbxc5untilyx_AA0iC14ObservedChangeVyqd__Gtc13changeHandlertlF":{"name":"observe(_:options:until:changeHandler:)","abstract":"

    This convenience method puts only a tiny bit of polish on","parent_name":"_KeyValueCodingAndObserving"},"Extensions/_5FKeyValueCodingAndObserving.html":{"name":"_KeyValueCodingAndObserving"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV7rawInfos10DictionaryVySSypGv":{"name":"rawInfo","abstract":"

    The original Dictionary received from UIPickerController’s","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV4typeAbCE11MediaFilterVv":{"name":"type","abstract":"

    The type of media picked by the user, converted to a","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV13originalImageSo0A0CSgv":{"name":"originalImage","abstract":"

    The original UIImage that the user selected from their","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV11editedImageSo0A0CSgv":{"name":"editedImage","abstract":"

    The edited image after any croping, resizing, etc has occurred.","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8cropRectSC6CGRectVSgv":{"name":"cropRect","abstract":"

    This is equivalent to the UIImagePickerControllerCropRect key","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8movieUrl10Foundation3URLVSgv":{"name":"movieUrl","abstract":"

    The fileUrl of the movie that was picked. This is equivalent to","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8metaDataSo12NSDictionaryCSgv":{"name":"metaData","abstract":"

    This is equivalent to the UIImagePickerControllerMediaMetadata key value from rawInfo.

    ","parent_name":"Result"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV5imageAEvZ":{"name":"image","abstract":"

    Tells the UIImagePickerController to allow images","parent_name":"MediaFilter"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV5movieAEvZ":{"name":"movie","abstract":"

    Tells the UIImagePickerController to allow movies","parent_name":"MediaFilter"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV3allAEvZ":{"name":"all","abstract":"

    Tells the UIImagePickerController to allow all","parent_name":"MediaFilter"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresEABSC0abC10SourceTypeO6source_AbCE11MediaFilterV5allowSo6UIViewCSg13cameraOverlaySb19showsCameraControlsyABc9didCancelyAbCE6ResultV_ABtc0Q4Picktcfc":{"name":"init(source:allow:cameraOverlay:showsCameraControls:didCancel:didPick:)","abstract":"

    This is a convenience initializer that allows you to setup your","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE7presentABXDSo06UIViewC0C4from_Sb7animate_yycSg10onCompletet9animationtF":{"name":"present(from:animation:)","abstract":"

    A convenience method that will present the UIImagePickerController. It will","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE21didFinishPickingMediaABXDys10DictionaryVySSypGc7handler_tF":{"name":"didFinishPickingMedia(handler:)","abstract":"

    Equivalent to implementing UIImagePickerControllerDelegate’s imagePickerController(_:didFinishPickingMediaWithInfo:) method

    ","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE9didCancelABXDyyc7handler_tF":{"name":"didCancel(handler:)","abstract":"

    Equivalent to implementing UIImagePickerControllerDelegate’s imagePickerControllerDidCancel(_:) method

    ","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController/MediaFilter.html":{"name":"MediaFilter","abstract":"

    A wrapper around kUTType. Eventually these will","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController/Result.html":{"name":"Result","abstract":"

    This result object is a only a wrapper around the loosely","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/c:@CM@Closures@@objc(cs)UIImagePickerController(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html":{"name":"UIImagePickerController"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE13addTapGestureSo05UITapE10RecognizerCSi12tapsRequired_Si07touchesI0yAFc7handlertF":{"name":"addTapGesture(tapsRequired:touchesRequired:handler:)","abstract":"

    A convenience method that adds a UITapGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE19addLongPressGestureSo06UILongeF10RecognizerCSi12tapsRequired_Si07touchesJ0Sd11minDuration12CoreGraphics7CGFloatV17allowableMovementyAFc7handlertF":{"name":"addLongPressGesture(tapsRequired:touchesRequired:minDuration:allowableMovement:handler:)","abstract":"

    A convenience method that adds a UILongPressGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE15addPinchGestureSo07UIPinchE10RecognizerCyAFc7handler_tF":{"name":"addPinchGesture(handler:)","abstract":"

    A convenience method that adds a UIPinchGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE15addSwipeGestureSo07UISwipeE10RecognizerCSC0feG9DirectionV9direction_Si15touchesRequiredyAFc7handlertF":{"name":"addSwipeGesture(direction:touchesRequired:handler:)","abstract":"

    A convenience method that adds a UISwipeGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE18addRotationGestureSo010UIRotationE10RecognizerCyAFc7handler_tF":{"name":"addRotationGesture(handler:)","abstract":"

    A convenience method that adds a UIRotationGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE13addPanGestureSo05UIPanE10RecognizerCSi10minTouches_Si03maxI0yAFc7handlertF":{"name":"addPanGesture(minTouches:maxTouches:handler:)","abstract":"

    A convenience method that adds a UIPanGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE23addScreenEdgePanGestureSo08UIScreenefG10RecognizerCSC06UIRectE0V5edges_yAFc7handlertF":{"name":"addScreenEdgePanGesture(edges:handler:)","abstract":"

    A convenience method that adds a UIScreenEdgePanGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIScreenEdgePanGestureRecognizer.html#/s:So32UIScreenEdgePanGestureRecognizerC8ClosuresEABSC06UIRectB0V5edges_yABc7handlertcfc":{"name":"init(edges:handler:)","abstract":"

    A convenience initializer for a UIScreenEdgePanGestureRecognizer so that it","parent_name":"UIScreenEdgePanGestureRecognizer"},"Extensions/UIRotationGestureRecognizer.html#/s:So27UIRotationGestureRecognizerC8ClosuresEAByABc7handler_tcfc":{"name":"init(handler:)","abstract":"

    A convenience initializer for a UIRotationGestureRecognizer so that it","parent_name":"UIRotationGestureRecognizer"},"Extensions/UISwipeGestureRecognizer.html#/s:So24UISwipeGestureRecognizerC8ClosuresEABSC0abC9DirectionV9direction_Si15touchesRequiredyABc7handlertcfc":{"name":"init(direction:touchesRequired:handler:)","abstract":"

    A convenience initializer for a UISwipeGestureRecognizer so that it","parent_name":"UISwipeGestureRecognizer"},"Extensions/UIPanGestureRecognizer.html#/s:So22UIPanGestureRecognizerC8ClosuresEABSi10minTouches_Si03maxF0yABc7handlertcfc":{"name":"init(minTouches:maxTouches:handler:)","abstract":"

    A convenience initializer for a UIPanGestureRecognizer so that it","parent_name":"UIPanGestureRecognizer"},"Extensions/UIPinchGestureRecognizer.html#/s:So24UIPinchGestureRecognizerC8ClosuresEAByABc7handler_tcfc":{"name":"init(handler:)","abstract":"

    A convenience initializer for a UIPinchGestureRecognizer so that it","parent_name":"UIPinchGestureRecognizer"},"Extensions/UILongPressGestureRecognizer.html#/s:So28UILongPressGestureRecognizerC8ClosuresEABSi12tapsRequired_Si07touchesG0Sd11minDuration12CoreGraphics7CGFloatV17allowableMovementyABc7handlertcfc":{"name":"init(tapsRequired:touchesRequired:minDuration:allowableMovement:handler:)","abstract":"

    A convenience initializer for a UILongPressGestureRecognizer so that it","parent_name":"UILongPressGestureRecognizer"},"Extensions/UITapGestureRecognizer.html#/s:So22UITapGestureRecognizerC8ClosuresEABSi12tapsRequired_Si07touchesF0yABc7handlertcfc":{"name":"init(tapsRequired:touchesRequired:handler:)","abstract":"

    A convenience initializer for a UITapGestureRecognizer so that it","parent_name":"UITapGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE11shouldBeginABXDSbyc7handler_tF":{"name":"shouldBegin(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizerShouldBegin(:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE33shouldRecognizeSimultaneouslyWithABXDSbABc7handler_tF":{"name":"shouldRecognizeSimultaneouslyWith(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldRecognizeSimultaneouslyWith:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE22shouldRequireFailureOfABXDSbABc7handler_tF":{"name":"shouldRequireFailureOf(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldRequireFailureOf:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE24shouldBeRequiredToFailByABXDSbABc7handler_tF":{"name":"shouldBeRequiredToFailBy(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldBeRequiredToFailBy:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE18shouldReceiveTouchABXDSbSo7UITouchCc7handler_tF":{"name":"shouldReceiveTouch(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldReceive:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE18shouldReceivePressABXDSbSo7UIPressCc7handler_tF":{"name":"shouldReceivePress(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldReceive:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/c:@CM@Closures@@objc(cs)UIGestureRecognizer(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html":{"name":"UIGestureRecognizer"},"Extensions/UITapGestureRecognizer.html":{"name":"UITapGestureRecognizer"},"Extensions/UILongPressGestureRecognizer.html":{"name":"UILongPressGestureRecognizer"},"Extensions/UIPinchGestureRecognizer.html":{"name":"UIPinchGestureRecognizer"},"Extensions/UIPanGestureRecognizer.html":{"name":"UIPanGestureRecognizer"},"Extensions/UISwipeGestureRecognizer.html":{"name":"UISwipeGestureRecognizer"},"Extensions/UIRotationGestureRecognizer.html":{"name":"UIRotationGestureRecognizer"},"Extensions/UIScreenEdgePanGestureRecognizer.html":{"name":"UIScreenEdgePanGestureRecognizer"},"Extensions/UIView.html":{"name":"UIView"},"Gesture Recognizers.html#/s:8Closures9configureyx7gesture_yxc7handlertSo19UIGestureRecognizerCRbzlF":{"name":"configure(gesture:handler:)","abstract":"

    This method is a convenience method to add a closure handler to a custom subclass of"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE9didScrollABXDyABc7handler_tF":{"name":"didScroll(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidScroll(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE7didZoomABXDyABc7handler_tF":{"name":"didZoom(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidZoom(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE17willBeginDraggingABXDyABc7handler_tF":{"name":"willBeginDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE15willEndDraggingABXDyAB_SC7CGPointVSpyAFGtc7handler_tF":{"name":"willEndDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillEndDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE14didEndDraggingABXDyAB_Sbtc7handler_tF":{"name":"didEndDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE21willBeginDeceleratingABXDyABc7handler_tF":{"name":"willBeginDecelerating(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginDecelerating(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE18didEndDeceleratingABXDyABc7handler_tF":{"name":"didEndDecelerating(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndDecelerating(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE24didEndScrollingAnimationABXDyABc7handler_tF":{"name":"didEndScrollingAnimation(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndScrollingAnimation(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE16viewForZoomingInABXDSo6UIViewCSgABc7handler_tF":{"name":"viewForZoomingIn(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s viewForZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE16willBeginZoomingABXDyAB_So6UIViewCSgtc7handler_tF":{"name":"willBeginZooming(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE13didEndZoomingABXDyAB_So6UIViewCSg12CoreGraphics7CGFloatVtc7handler_tF":{"name":"didEndZooming(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE17shouldScrollToTopABXDSbABc7handler_tF":{"name":"shouldScrollToTop(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewShouldScrollToTop(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE14didScrollToTopABXDyABc7handler_tF":{"name":"didScrollToTop(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidScrollToTop(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE29didChangeAdjustedContentInsetABXDyABc7handler_tF":{"name":"didChangeAdjustedContentInset(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidChangeAdjustedContentInset(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/c:@CM@Closures@@objc(cs)UIScrollView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIScrollView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE10addStringsABXDSaySSG_ySS_S2itc9didSelecttF":{"name":"addStrings(_:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11addElementsABXDSayxG_SSx_S2itc8rowTitleyx_S2itc9didSelecttlF":{"name":"addElements(_:rowTitle:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11addElementsABXDSayxG_So6UIViewCx_AGSgS2itc03rowB0yx_S2itc9didSelecttlF":{"name":"addElements(_:rowView:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySaySSGG_ySS_S2itc9didSelecttF":{"name":"addComponents(_:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySayxGG_SSx_S2itc8rowTitleyx_S2itc9didSelecttlF":{"name":"addComponents(_:rowTitle:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySayxGG_So6UIViewCx_AHSgS2itc03rowB0yx_S2itc9didSelecttlF":{"name":"addComponents(_:rowView:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE21rowHeightForComponentABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"rowHeightForComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:rowHeightForComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE17widthForComponentABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"widthForComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:widthForComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11titleForRowABXDSSSgSi_Sitc7handler_tF":{"name":"titleForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:titleForRow:forComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE21attributedTitleForRowABXDSo18NSAttributedStringCSgSi_Sitc7handler_tF":{"name":"attributedTitleForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:attributedTitleForRow:forComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE10viewForRowABXDSo6UIViewCSi_SiAFSgtc7handler_tF":{"name":"viewForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:viewForRow:forComponent:reusing:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE12didSelectRowABXDySi_Sitc7handler_tF":{"name":"didSelectRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:didSelectRow:inComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE18numberOfComponentsABXDSiyc7handler_tF":{"name":"numberOfComponents(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDataSource’s numberOfComponents(in:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE23numberOfRowsInComponentABXDS2ic7handler_tF":{"name":"numberOfRowsInComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDataSource’s pickerView(_:numberOfRowsInComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/c:@CM@Closures@@objc(cs)UIPickerView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UIPickerView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE15addFlowElementsABXDSayxG_q_m4cellSSSg0G7NibNameyx_q_zSitc4itemtSo0aB4CellCRb_r0_lF":{"name":"addFlowElements(_:cell:cellNibName:item:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE21shouldHighlightItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldHighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldHighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18didHighlightItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didHighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didHighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE20didUnhighlightItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didUnhighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didUnhighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18shouldSelectItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldSelectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldSelectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE20shouldDeselectItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldDeselectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldDeselectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE15didSelectItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didSelectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didSelectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE17didDeselectItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didDeselectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didDeselectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE11willDisplayABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplay(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:willDisplay:forItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE024willDisplaySupplementaryB0ABXDySS_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplaySupplementaryView(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:willDisplaySupplementaryView:forElementKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16didEndDisplayingABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplaying(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didEndDisplaying:forItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE029didEndDisplayingSupplementaryB0ABXDySS_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplayingSupplementaryView(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didEndDisplayingSupplementaryView:forElementOfKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE23shouldShowMenuForItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldShowMenuForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldShowMenuForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16canPerformActionABXDSb10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"canPerformAction(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:canPerformAction:forItemAt:withSender:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13performActionABXDy10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"performAction(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:performAction:forItemAt:withSender:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE022transitionLayoutForOldE0ABXDSo0ab10TransitionE0CSo0abE0C_AHtc7handler_tF":{"name":"transitionLayoutForOldLayout(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:transitionLayoutForOldLayout:newLayout:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE14canFocusItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canFocusItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:canFocusItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE19shouldUpdateFocusInABXDSbSo0abfE7ContextCc7handler_tF":{"name":"shouldUpdateFocusIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldUpdateFocusIn:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16didUpdateFocusInABXDySo0abfE7ContextC_So27UIFocusAnimationCoordinatorCtc7handler_tF":{"name":"didUpdateFocusIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didUpdateFocusIn:with:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE028indexPathForPreferredFocusedB2InABXD10Foundation05IndexE0VSgyc7handler_tF":{"name":"indexPathForPreferredFocusedViewIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s indexPathForPreferredFocusedVies(in:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE32targetIndexPathForMoveFromItemAtABXD10Foundation0eF0VAG_AGtc7handler_tF":{"name":"targetIndexPathForMoveFromItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:targetIndexPathForMoveFromItemAt:toProposedIndexPath:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE030targetContentOffsetForProposedeF0ABXDSC7CGPointVAFc7handler_tF":{"name":"targetContentOffsetForProposedContentOffset(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:targetContentOffsetForProposedContentOffset:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22shouldSpringLoadItemAtABXDSb10Foundation9IndexPathV_So32UISpringLoadedInteractionContext_ptc7handler_tF":{"name":"shouldSpringLoadItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldSpringLoadItemAt:with:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22numberOfItemsInSectionABXDS2ic7handler_tF":{"name":"numberOfItemsInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:numberOfItemsInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13cellForItemAtABXDSo0aB4CellC10Foundation9IndexPathVc7handler_tF":{"name":"cellForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:cellForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18numberOfSectionsInABXDSiyc7handler_tF":{"name":"numberOfSectionsIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s numberOfSections(in:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE33viewForSupplementaryElementOfKindABXDSo0a8ReusableB0CSS_10Foundation9IndexPathVtc7handler_tF":{"name":"viewForSupplementaryElementOfKind(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:viewForSupplementaryElementOfKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13canMoveItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canMoveItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:canMoveItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE10moveItemAtABXDy10Foundation9IndexPathV_AGtc7handler_tF":{"name":"moveItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:moveItemAt:to:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE14indexTitlesForABXDSaySSGyc7handler_tF":{"name":"indexTitlesFor(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s indexTitles(for:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22indexPathForIndexTitleABXD10Foundation0gE0VSS_Sitc7handler_tF":{"name":"indexPathForIndexTitle(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:indexPathForIndexTitle:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13sizeForItemAtABXDSC6CGSizeV10Foundation9IndexPathVc7handler_tF":{"name":"sizeForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:sizeForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE17insetForSectionAtABXDSC12UIEdgeInsetsVSic7handler_tF":{"name":"insetForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionV(_:layout:insetForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE30minimumLineSpacingForSectionAtABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"minimumLineSpacingForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:minimumLineSpacingForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE35minimumInteritemSpacingForSectionAtABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"minimumInteritemSpacingForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:minimumInteritemSpacingForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE31referenceSizeForHeaderInSectionABXDSC6CGSizeVSic7handler_tF":{"name":"referenceSizeForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:referenceSizeForHeaderInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE31referenceSizeForFooterInSectionABXDSC6CGSizeVSic7handler_tF":{"name":"referenceSizeForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:referenceSizeForFooterInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/c:@CM@Closures@@objc(cs)UICollectionView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UICollectionView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addElementsABXDSayxG_q_m4cellSSSg0F7NibNameyx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addElements(_:cell:cellNibName:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addSectionsABXDSaySayxGG_q_m4cellSSSg0F7NibNameSo6UIViewCAE_Sitc06headerB0yx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addSections(_:cell:cellNibName:headerView:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addSectionsABXDSaySayxGG_q_m4cellSSSg0F7NibNameSSAE_SitcSg11headerTitleyx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addSections(_:cell:cellNibName:headerTitle:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11willDisplayABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplay(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplay:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE017willDisplayHeaderB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"willDisplayHeaderView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplayHeaderView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE017willDisplayFooterB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"willDisplayFooterView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplayFooterView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16didEndDisplayingABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplaying(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplaying:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE022didEndDisplayingHeaderB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"didEndDisplayingHeaderView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplayingHeaderView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE022didEndDisplayingFooterB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"didEndDisplayingFooterView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplayingFooterView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14heightForRowAtABXD12CoreGraphics7CGFloatV10Foundation9IndexPathVc7handler_tF":{"name":"heightForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24heightForHeaderInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"heightForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24heightForFooterInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"heightForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23estimatedHeightForRowAtABXD12CoreGraphics7CGFloatV10Foundation9IndexPathVc7handler_tF":{"name":"estimatedHeightForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE33estimatedHeightForHeaderInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"estimatedHeightForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE33estimatedHeightForFooterInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"estimatedHeightForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22viewForHeaderInSectionABXDSo6UIViewCSgSic7handler_tF":{"name":"viewForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:viewForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22viewForFooterInSectionABXDSo6UIViewCSgSic7handler_tF":{"name":"viewForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:viewForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE31accessoryButtonTappedForRowWithABXDy10Foundation9IndexPathVc7handler_tF":{"name":"accessoryButtonTappedForRowWith(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:accessoryButtonTappedForRowWith:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE20shouldHighlightRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldHighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldHighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17didHighlightRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didHighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didHighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE19didUnhighlightRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didUnhighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didUnhighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE15willSelectRowAtABXD10Foundation9IndexPathVSgAGc7handler_tF":{"name":"willSelectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willSelectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17willDeselectRowAtABXD10Foundation9IndexPathVSgAGc7handler_tF":{"name":"willDeselectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDeselectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14didSelectRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didSelectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didSelectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16didDeselectRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didDeselectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didDeselectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE20editingStyleForRowAtABXDSC0ab11CellEditingE0O10Foundation9IndexPathVc7handler_tF":{"name":"editingStyleForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:editingStyleForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE032titleForDeleteConfirmationButtonE5RowAtABXDSSSg10Foundation9IndexPathVc7handler_tF":{"name":"titleForDeleteConfirmationButtonForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:titleForDeleteConfirmationButtonForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE19editActionsForRowAtABXDSaySo0abG6ActionCGSg10Foundation9IndexPathVc7handler_tF":{"name":"editActionsForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:editActionsForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE29shouldIndentWhileEditingRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldIndentWhileEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldIndentWhileEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE21willBeginEditingRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"willBeginEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willBeginEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18didEndEditingRowAtABXDy10Foundation9IndexPathVSgc7handler_tF":{"name":"didEndEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE31targetIndexPathForMoveFromRowAtABXD10Foundation0eF0VAG_AGtc7handler_tF":{"name":"targetIndexPathForMoveFromRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:targetIndexPathForMoveFromRowAt:toProposedIndexPath:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24indentationLevelForRowAtABXDSi10Foundation9IndexPathVc7handler_tF":{"name":"indentationLevelForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:indentationLevelForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22shouldShowMenuForRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldShowMenuForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldShowMenuForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16canPerformActionABXDSb10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"canPerformAction(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:canPerformAction:forRowAt:withSender:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE13performActionABXDy10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"performAction(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:performAction:forRowAt:withSender:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE13canFocusRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canFocusRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:canFocusRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17shouldUpdateFocusABXDSbSo0abfE7ContextCc7handler_tF":{"name":"shouldUpdateFocus(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldUpdateFocusIn:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14didUpdateFocusABXDySo0abfE7ContextC_So27UIFocusAnimationCoordinatorCtc7handler_tF":{"name":"didUpdateFocus(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didUpdateFocusIn:with:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE028indexPathForPreferredFocusedB0ABXD10Foundation05IndexE0VSgyc7handler_tF":{"name":"indexPathForPreferredFocusedView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s indexPathForPreferredFocusedView(in:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12numberOfRowsABXDS2ic7handler_tF":{"name":"numberOfRows(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:numberOfRowsInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE10cellForRowABXDSo0aB4CellC10Foundation9IndexPathVc7handler_tF":{"name":"cellForRow(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:cellForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18numberOfSectionsInABXDSiyc7handler_tF":{"name":"numberOfSectionsIn(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s numberOfSections(in:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23titleForHeaderInSectionABXDSSSgSic7handler_tF":{"name":"titleForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:titleForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23titleForFooterInSectionABXDSSSgSic7handler_tF":{"name":"titleForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:titleForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12canEditRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canEditRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:canEditRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12canMoveRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canMoveRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:canMoveRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18sectionIndexTitlesABXDSaySSGSgyc7handler_tF":{"name":"sectionIndexTitles(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s sectionIndexTitles(for:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE27sectionForSectionIndexTitleABXDSiSS_Sitc7handler_tF":{"name":"sectionForSectionIndexTitle(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:sectionForSectionIndexTitle:at:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE6commitABXDySC0aB16CellEditingStyleO_10Foundation9IndexPathVtc7handler_tF":{"name":"commit(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:commit:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE9moveRowAtABXDy10Foundation9IndexPathV_AGtc7handler_tF":{"name":"moveRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:moveRowAt:to:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE40leadingSwipeActionsConfigurationForRowAtABXDSo07UISwipefG0CSg10Foundation9IndexPathVc7handler_tF":{"name":"leadingSwipeActionsConfigurationForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:leadingSwipeActionsConfigurationForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE41trailingSwipeActionsConfigurationForRowAtABXDSo07UISwipefG0CSg10Foundation9IndexPathVc7handler_tF":{"name":"trailingSwipeActionsConfigurationForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:trailingSwipeActionsConfigurationForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE21shouldSpringLoadRowAtABXDSb10Foundation9IndexPathV_So32UISpringLoadedInteractionContext_ptc7handler_tF":{"name":"shouldSpringLoadRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldSpringLoadRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/c:@CM@Closures@@objc(cs)UITableView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UITableView"},"Extensions/UITableView.html":{"name":"UITableView"},"Extensions/UICollectionView.html":{"name":"UICollectionView"},"Extensions/UIPickerView.html":{"name":"UIPickerView"},"Extensions/UIScrollView.html":{"name":"UIScrollView"},"Extensions/UIControl.html#/s:So9UIControlC8ClosuresE2onABXDSC0A6EventsV_yAB_So7UIEventCSgtc7handlertF":{"name":"on(_:handler:)","abstract":"

    Provide a handler that will be called for UIControlEvents option passed in.

    ","parent_name":"UIControl"},"Extensions/UISlider.html#/s:So8UISliderC8ClosuresE8onChangeABXDySfc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISlider"},"Extensions/UIStepper.html#/s:So9UIStepperC8ClosuresE8onChangeABXDySdc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIStepper"},"Extensions/UISegmentedControl.html#/s:So18UISegmentedControlC8ClosuresE8onChangeABXDySic7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISegmentedControl"},"Extensions/UIPageControl.html#/s:So13UIPageControlC8ClosuresE8onChangeABXDySic7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIPageControl"},"Extensions/UIDatePicker.html#/s:So12UIDatePickerC8ClosuresE8onChangeABXDy10Foundation4DateVc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIDatePicker"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE8onChangeABXDySSc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping a typical use for UITextField’s","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE14onEditingEndedABXDyyc7handler_tF":{"name":"onEditingEnded(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidEnd for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE14onEditingBeganABXDyyc7handler_tF":{"name":"onEditingBegan(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidBegin for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE8onReturnABXDyyc7handler_tF":{"name":"onReturn(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidEndOnExit for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE18shouldBeginEditingABXDSbyc7handler_tF":{"name":"shouldBeginEditing(handler:)","abstract":"

    This method determines if the text field should begin editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE15didBeginEditingABXDyyc7handler_tF":{"name":"didBeginEditing(handler:)","abstract":"

    This method determines if the text field did begin editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE16shouldEndEditingABXDSbyc7handler_tF":{"name":"shouldEndEditing(handler:)","abstract":"

    This method determines if the text field should end editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE13didEndEditingABXDyyc7handler_tF":{"name":"didEndEditing(handler:)","abstract":"

    This method determines if the text field did end editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE22shouldChangeCharactersABXDSbSC8_NSRangeV_SStc7handler_tF":{"name":"shouldChangeCharacters(handler:)","abstract":"

    This method determines if the text field should change its characters based on user input.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE18shouldChangeStringABXDSbSS_SStc7handler_tF":{"name":"shouldChangeString(handler:)","abstract":"

    This method determines if the text field should change its text based on user input.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE11shouldClearABXDSbyc7handler_tF":{"name":"shouldClear(handler:)","abstract":"

    This method determines if the text field should remove its text. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE12shouldReturnABXDSbyc7handler_tF":{"name":"shouldReturn(handler:)","abstract":"

    This method determines if the text field should process the return button. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/c:@CM@Closures@@objc(cs)UITextField(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UITextField"},"Extensions/UISwitch.html#/s:So8UISwitchC8ClosuresE8onChangeABXDySbc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISwitch"},"Extensions/UIButton.html#/s:So8UIButtonC8ClosuresE5onTapABXDyyc7handler_tF":{"name":"onTap(handler:)","abstract":"

    A convenience method wrapping a typical use for UIButton’s","parent_name":"UIButton"},"Extensions/UIButton.html":{"name":"UIButton"},"Extensions/UISwitch.html":{"name":"UISwitch"},"Extensions/UITextField.html":{"name":"UITextField"},"Extensions/UIDatePicker.html":{"name":"UIDatePicker"},"Extensions/UIPageControl.html":{"name":"UIPageControl"},"Extensions/UISegmentedControl.html":{"name":"UISegmentedControl"},"Extensions/UIStepper.html":{"name":"UIStepper"},"Extensions/UISlider.html":{"name":"UISlider"},"Extensions/UIControl.html":{"name":"UIControl"},"Controls.html":{"name":"Controls"},"Scrolling Views.html":{"name":"Scrolling Views"},"Gesture Recognizers.html":{"name":"Gesture Recognizers"},"Controllers.html":{"name":"Controllers"},"KVO.html":{"name":"KVO"}} \ No newline at end of file +{"Extensions/_5FKeyValueCodingAndObserving.html#/s:10Foundation27_KeyValueCodingAndObservingP8ClosuresE7observeAA05NSKeyC11ObservationCs0B4PathCyxqd__G_SC0icF7OptionsV7optionsSbxc5untilyx_AA0iC14ObservedChangeVyqd__Gtc13changeHandlertlF":{"name":"observe(_:options:until:changeHandler:)","abstract":"

    This convenience method puts only a tiny bit of polish on","parent_name":"_KeyValueCodingAndObserving"},"Extensions/_5FKeyValueCodingAndObserving.html":{"name":"_KeyValueCodingAndObserving"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV7rawInfos10DictionaryVySSypGv":{"name":"rawInfo","abstract":"

    The original Dictionary received from UIPickerController’s","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV4typeAbCE11MediaFilterVv":{"name":"type","abstract":"

    The type of media picked by the user, converted to a","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV13originalImageSo0A0CSgv":{"name":"originalImage","abstract":"

    The original UIImage that the user selected from their","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV11editedImageSo0A0CSgv":{"name":"editedImage","abstract":"

    The edited image after any croping, resizing, etc has occurred.","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8cropRectSC6CGRectVSgv":{"name":"cropRect","abstract":"

    This is equivalent to the UIImagePickerControllerCropRect key","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8movieUrl10Foundation3URLVSgv":{"name":"movieUrl","abstract":"

    The fileUrl of the movie that was picked. This is equivalent to","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8metaDataSo12NSDictionaryCSgv":{"name":"metaData","abstract":"

    This is equivalent to the UIImagePickerControllerMediaMetadata key value from rawInfo.

    ","parent_name":"Result"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV5imageAEvZ":{"name":"image","abstract":"

    Tells the UIImagePickerController to allow images","parent_name":"MediaFilter"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV5movieAEvZ":{"name":"movie","abstract":"

    Tells the UIImagePickerController to allow movies","parent_name":"MediaFilter"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV3allAEvZ":{"name":"all","abstract":"

    Tells the UIImagePickerController to allow all","parent_name":"MediaFilter"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresEABSC0abC10SourceTypeO6source_AbCE11MediaFilterV5allowSo6UIViewCSg13cameraOverlaySb19showsCameraControlsyABc9didCancelyAbCE6ResultV_ABtc0Q4Picktcfc":{"name":"init(source:allow:cameraOverlay:showsCameraControls:didCancel:didPick:)","abstract":"

    This is a convenience initializer that allows you to setup your","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE7presentABXDSo06UIViewC0C4from_Sb7animate_yycSg10onCompletet9animationtF":{"name":"present(from:animation:)","abstract":"

    A convenience method that will present the UIImagePickerController. It will","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE21didFinishPickingMediaABXDys10DictionaryVySSypGc7handler_tF":{"name":"didFinishPickingMedia(handler:)","abstract":"

    Equivalent to implementing UIImagePickerControllerDelegate’s imagePickerController(_:didFinishPickingMediaWithInfo:) method

    ","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE9didCancelABXDyyc7handler_tF":{"name":"didCancel(handler:)","abstract":"

    Equivalent to implementing UIImagePickerControllerDelegate’s imagePickerControllerDidCancel(_:) method

    ","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController/MediaFilter.html":{"name":"MediaFilter","abstract":"

    A wrapper around kUTType. Eventually these will","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController/Result.html":{"name":"Result","abstract":"

    This result object is a only a wrapper around the loosely","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/c:@CM@Closures@@objc(cs)UIImagePickerController(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html":{"name":"UIImagePickerController"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE13addTapGestureSo05UITapE10RecognizerCSi12tapsRequired_Si07touchesI0yAFc7handlertF":{"name":"addTapGesture(tapsRequired:touchesRequired:handler:)","abstract":"

    A convenience method that adds a UITapGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE19addLongPressGestureSo06UILongeF10RecognizerCSi12tapsRequired_Si07touchesJ0Sd11minDuration12CoreGraphics7CGFloatV17allowableMovementyAFc7handlertF":{"name":"addLongPressGesture(tapsRequired:touchesRequired:minDuration:allowableMovement:handler:)","abstract":"

    A convenience method that adds a UILongPressGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE15addPinchGestureSo07UIPinchE10RecognizerCyAFc7handler_tF":{"name":"addPinchGesture(handler:)","abstract":"

    A convenience method that adds a UIPinchGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE15addSwipeGestureSo07UISwipeE10RecognizerCSC0feG9DirectionV9direction_Si15touchesRequiredyAFc7handlertF":{"name":"addSwipeGesture(direction:touchesRequired:handler:)","abstract":"

    A convenience method that adds a UISwipeGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE18addRotationGestureSo010UIRotationE10RecognizerCyAFc7handler_tF":{"name":"addRotationGesture(handler:)","abstract":"

    A convenience method that adds a UIRotationGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE13addPanGestureSo05UIPanE10RecognizerCSi10minTouches_Si03maxI0yAFc7handlertF":{"name":"addPanGesture(minTouches:maxTouches:handler:)","abstract":"

    A convenience method that adds a UIPanGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE23addScreenEdgePanGestureSo08UIScreenefG10RecognizerCSC06UIRectE0V5edges_yAFc7handlertF":{"name":"addScreenEdgePanGesture(edges:handler:)","abstract":"

    A convenience method that adds a UIScreenEdgePanGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIScreenEdgePanGestureRecognizer.html#/s:So32UIScreenEdgePanGestureRecognizerC8ClosuresEABSC06UIRectB0V5edges_yABc7handlertcfc":{"name":"init(edges:handler:)","abstract":"

    A convenience initializer for a UIScreenEdgePanGestureRecognizer so that it","parent_name":"UIScreenEdgePanGestureRecognizer"},"Extensions/UIRotationGestureRecognizer.html#/s:So27UIRotationGestureRecognizerC8ClosuresEAByABc7handler_tcfc":{"name":"init(handler:)","abstract":"

    A convenience initializer for a UIRotationGestureRecognizer so that it","parent_name":"UIRotationGestureRecognizer"},"Extensions/UISwipeGestureRecognizer.html#/s:So24UISwipeGestureRecognizerC8ClosuresEABSC0abC9DirectionV9direction_Si15touchesRequiredyABc7handlertcfc":{"name":"init(direction:touchesRequired:handler:)","abstract":"

    A convenience initializer for a UISwipeGestureRecognizer so that it","parent_name":"UISwipeGestureRecognizer"},"Extensions/UIPanGestureRecognizer.html#/s:So22UIPanGestureRecognizerC8ClosuresEABSi10minTouches_Si03maxF0yABc7handlertcfc":{"name":"init(minTouches:maxTouches:handler:)","abstract":"

    A convenience initializer for a UIPanGestureRecognizer so that it","parent_name":"UIPanGestureRecognizer"},"Extensions/UIPinchGestureRecognizer.html#/s:So24UIPinchGestureRecognizerC8ClosuresEAByABc7handler_tcfc":{"name":"init(handler:)","abstract":"

    A convenience initializer for a UIPinchGestureRecognizer so that it","parent_name":"UIPinchGestureRecognizer"},"Extensions/UILongPressGestureRecognizer.html#/s:So28UILongPressGestureRecognizerC8ClosuresEABSi12tapsRequired_Si07touchesG0Sd11minDuration12CoreGraphics7CGFloatV17allowableMovementyABc7handlertcfc":{"name":"init(tapsRequired:touchesRequired:minDuration:allowableMovement:handler:)","abstract":"

    A convenience initializer for a UILongPressGestureRecognizer so that it","parent_name":"UILongPressGestureRecognizer"},"Extensions/UITapGestureRecognizer.html#/s:So22UITapGestureRecognizerC8ClosuresEABSi12tapsRequired_Si07touchesF0yABc7handlertcfc":{"name":"init(tapsRequired:touchesRequired:handler:)","abstract":"

    A convenience initializer for a UITapGestureRecognizer so that it","parent_name":"UITapGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE11shouldBeginABXDSbyc7handler_tF":{"name":"shouldBegin(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizerShouldBegin(:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE33shouldRecognizeSimultaneouslyWithABXDSbABc7handler_tF":{"name":"shouldRecognizeSimultaneouslyWith(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldRecognizeSimultaneouslyWith:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE22shouldRequireFailureOfABXDSbABc7handler_tF":{"name":"shouldRequireFailureOf(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldRequireFailureOf:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE24shouldBeRequiredToFailByABXDSbABc7handler_tF":{"name":"shouldBeRequiredToFailBy(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldBeRequiredToFailBy:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE18shouldReceiveTouchABXDSbSo7UITouchCc7handler_tF":{"name":"shouldReceiveTouch(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldReceive:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE18shouldReceivePressABXDSbSo7UIPressCc7handler_tF":{"name":"shouldReceivePress(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldReceive:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/c:@CM@Closures@@objc(cs)UIGestureRecognizer(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html":{"name":"UIGestureRecognizer"},"Extensions/UITapGestureRecognizer.html":{"name":"UITapGestureRecognizer"},"Extensions/UILongPressGestureRecognizer.html":{"name":"UILongPressGestureRecognizer"},"Extensions/UIPinchGestureRecognizer.html":{"name":"UIPinchGestureRecognizer"},"Extensions/UIPanGestureRecognizer.html":{"name":"UIPanGestureRecognizer"},"Extensions/UISwipeGestureRecognizer.html":{"name":"UISwipeGestureRecognizer"},"Extensions/UIRotationGestureRecognizer.html":{"name":"UIRotationGestureRecognizer"},"Extensions/UIScreenEdgePanGestureRecognizer.html":{"name":"UIScreenEdgePanGestureRecognizer"},"Extensions/UIView.html":{"name":"UIView"},"Gesture Recognizers.html#/s:8Closures9configureyx7gesture_yxc7handlertSo19UIGestureRecognizerCRbzlF":{"name":"configure(gesture:handler:)","abstract":"

    This method is a convenience method to add a closure handler to a custom subclass of"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE9didScrollABXDyABc7handler_tF":{"name":"didScroll(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidScroll(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE7didZoomABXDyABc7handler_tF":{"name":"didZoom(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidZoom(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE17willBeginDraggingABXDyABc7handler_tF":{"name":"willBeginDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE15willEndDraggingABXDyAB_SC7CGPointVSpyAFGtc7handler_tF":{"name":"willEndDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillEndDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE14didEndDraggingABXDyAB_Sbtc7handler_tF":{"name":"didEndDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE21willBeginDeceleratingABXDyABc7handler_tF":{"name":"willBeginDecelerating(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginDecelerating(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE18didEndDeceleratingABXDyABc7handler_tF":{"name":"didEndDecelerating(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndDecelerating(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE24didEndScrollingAnimationABXDyABc7handler_tF":{"name":"didEndScrollingAnimation(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndScrollingAnimation(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE16viewForZoomingInABXDSo6UIViewCSgABc7handler_tF":{"name":"viewForZoomingIn(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s viewForZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE16willBeginZoomingABXDyAB_So6UIViewCSgtc7handler_tF":{"name":"willBeginZooming(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE13didEndZoomingABXDyAB_So6UIViewCSg12CoreGraphics7CGFloatVtc7handler_tF":{"name":"didEndZooming(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE17shouldScrollToTopABXDSbABc7handler_tF":{"name":"shouldScrollToTop(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewShouldScrollToTop(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE14didScrollToTopABXDyABc7handler_tF":{"name":"didScrollToTop(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidScrollToTop(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE29didChangeAdjustedContentInsetABXDyABc7handler_tF":{"name":"didChangeAdjustedContentInset(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidChangeAdjustedContentInset(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/c:@CM@Closures@@objc(cs)UIScrollView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIScrollView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE10addStringsABXDSaySSG_ySS_S2itc9didSelecttF":{"name":"addStrings(_:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11addElementsABXDSayxG_SSx_S2itc8rowTitleyx_S2itc9didSelecttlF":{"name":"addElements(_:rowTitle:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11addElementsABXDSayxG_So6UIViewCx_AGSgS2itc03rowB0yx_S2itc9didSelecttlF":{"name":"addElements(_:rowView:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySaySSGG_ySS_S2itc9didSelecttF":{"name":"addComponents(_:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySayxGG_SSx_S2itc8rowTitleyx_S2itc9didSelecttlF":{"name":"addComponents(_:rowTitle:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySayxGG_So6UIViewCx_AHSgS2itc03rowB0yx_S2itc9didSelecttlF":{"name":"addComponents(_:rowView:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE21rowHeightForComponentABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"rowHeightForComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:rowHeightForComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE17widthForComponentABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"widthForComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:widthForComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11titleForRowABXDSSSgSi_Sitc7handler_tF":{"name":"titleForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:titleForRow:forComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE21attributedTitleForRowABXDSo18NSAttributedStringCSgSi_Sitc7handler_tF":{"name":"attributedTitleForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:attributedTitleForRow:forComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE10viewForRowABXDSo6UIViewCSi_SiAFSgtc7handler_tF":{"name":"viewForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:viewForRow:forComponent:reusing:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE12didSelectRowABXDySi_Sitc7handler_tF":{"name":"didSelectRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:didSelectRow:inComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE18numberOfComponentsABXDSiyc7handler_tF":{"name":"numberOfComponents(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDataSource’s numberOfComponents(in:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE23numberOfRowsInComponentABXDS2ic7handler_tF":{"name":"numberOfRowsInComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDataSource’s pickerView(_:numberOfRowsInComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/c:@CM@Closures@@objc(cs)UIPickerView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UIPickerView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE15addFlowElementsABXDSayxG_q_m4cellSSSg0G7NibNameyx_q_zSitc4itemtSo0aB4CellCRb_r0_lF":{"name":"addFlowElements(_:cell:cellNibName:item:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE21shouldHighlightItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldHighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldHighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18didHighlightItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didHighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didHighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE20didUnhighlightItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didUnhighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didUnhighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18shouldSelectItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldSelectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldSelectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE20shouldDeselectItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldDeselectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldDeselectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE15didSelectItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didSelectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didSelectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE17didDeselectItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didDeselectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didDeselectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE11willDisplayABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplay(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:willDisplay:forItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE024willDisplaySupplementaryB0ABXDySS_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplaySupplementaryView(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:willDisplaySupplementaryView:forElementKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16didEndDisplayingABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplaying(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didEndDisplaying:forItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE029didEndDisplayingSupplementaryB0ABXDySS_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplayingSupplementaryView(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didEndDisplayingSupplementaryView:forElementOfKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE23shouldShowMenuForItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldShowMenuForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldShowMenuForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16canPerformActionABXDSb10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"canPerformAction(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:canPerformAction:forItemAt:withSender:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13performActionABXDy10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"performAction(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:performAction:forItemAt:withSender:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE022transitionLayoutForOldE0ABXDSo0ab10TransitionE0CSo0abE0C_AHtc7handler_tF":{"name":"transitionLayoutForOldLayout(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:transitionLayoutForOldLayout:newLayout:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE14canFocusItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canFocusItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:canFocusItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE19shouldUpdateFocusInABXDSbSo0abfE7ContextCc7handler_tF":{"name":"shouldUpdateFocusIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldUpdateFocusIn:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16didUpdateFocusInABXDySo0abfE7ContextC_So27UIFocusAnimationCoordinatorCtc7handler_tF":{"name":"didUpdateFocusIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didUpdateFocusIn:with:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE028indexPathForPreferredFocusedB2InABXD10Foundation05IndexE0VSgyc7handler_tF":{"name":"indexPathForPreferredFocusedViewIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s indexPathForPreferredFocusedVies(in:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE32targetIndexPathForMoveFromItemAtABXD10Foundation0eF0VAG_AGtc7handler_tF":{"name":"targetIndexPathForMoveFromItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:targetIndexPathForMoveFromItemAt:toProposedIndexPath:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE030targetContentOffsetForProposedeF0ABXDSC7CGPointVAFc7handler_tF":{"name":"targetContentOffsetForProposedContentOffset(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:targetContentOffsetForProposedContentOffset:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22shouldSpringLoadItemAtABXDSb10Foundation9IndexPathV_So32UISpringLoadedInteractionContext_ptc7handler_tF":{"name":"shouldSpringLoadItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldSpringLoadItemAt:with:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22numberOfItemsInSectionABXDS2ic7handler_tF":{"name":"numberOfItemsInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:numberOfItemsInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13cellForItemAtABXDSo0aB4CellC10Foundation9IndexPathVc7handler_tF":{"name":"cellForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:cellForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18numberOfSectionsInABXDSiyc7handler_tF":{"name":"numberOfSectionsIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s numberOfSections(in:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE33viewForSupplementaryElementOfKindABXDSo0a8ReusableB0CSS_10Foundation9IndexPathVtc7handler_tF":{"name":"viewForSupplementaryElementOfKind(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:viewForSupplementaryElementOfKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13canMoveItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canMoveItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:canMoveItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE10moveItemAtABXDy10Foundation9IndexPathV_AGtc7handler_tF":{"name":"moveItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:moveItemAt:to:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE14indexTitlesForABXDSaySSGyc7handler_tF":{"name":"indexTitlesFor(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s indexTitles(for:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22indexPathForIndexTitleABXD10Foundation0gE0VSS_Sitc7handler_tF":{"name":"indexPathForIndexTitle(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:indexPathForIndexTitle:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13sizeForItemAtABXDSC6CGSizeV10Foundation9IndexPathVc7handler_tF":{"name":"sizeForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:sizeForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE17insetForSectionAtABXDSC12UIEdgeInsetsVSic7handler_tF":{"name":"insetForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionV(_:layout:insetForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE30minimumLineSpacingForSectionAtABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"minimumLineSpacingForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:minimumLineSpacingForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE35minimumInteritemSpacingForSectionAtABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"minimumInteritemSpacingForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:minimumInteritemSpacingForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE31referenceSizeForHeaderInSectionABXDSC6CGSizeVSic7handler_tF":{"name":"referenceSizeForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:referenceSizeForHeaderInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE31referenceSizeForFooterInSectionABXDSC6CGSizeVSic7handler_tF":{"name":"referenceSizeForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:referenceSizeForFooterInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/c:@CM@Closures@@objc(cs)UICollectionView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UICollectionView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addElementsABXDSayxG_q_m4cellSSSg0F7NibNameyx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addElements(_:cell:cellNibName:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addSectionsABXDSaySayxGG_q_m4cellSSSg0F7NibNameSo6UIViewCAE_Sitc06headerB0yx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addSections(_:cell:cellNibName:headerView:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addSectionsABXDSaySayxGG_q_m4cellSSSg0F7NibNameSSAE_SitcSg11headerTitleyx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addSections(_:cell:cellNibName:headerTitle:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11willDisplayABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplay(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplay:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE017willDisplayHeaderB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"willDisplayHeaderView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplayHeaderView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE017willDisplayFooterB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"willDisplayFooterView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplayFooterView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16didEndDisplayingABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplaying(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplaying:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE022didEndDisplayingHeaderB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"didEndDisplayingHeaderView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplayingHeaderView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE022didEndDisplayingFooterB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"didEndDisplayingFooterView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplayingFooterView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14heightForRowAtABXD12CoreGraphics7CGFloatV10Foundation9IndexPathVc7handler_tF":{"name":"heightForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24heightForHeaderInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"heightForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24heightForFooterInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"heightForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23estimatedHeightForRowAtABXD12CoreGraphics7CGFloatV10Foundation9IndexPathVc7handler_tF":{"name":"estimatedHeightForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE33estimatedHeightForHeaderInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"estimatedHeightForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE33estimatedHeightForFooterInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"estimatedHeightForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22viewForHeaderInSectionABXDSo6UIViewCSgSic7handler_tF":{"name":"viewForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:viewForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22viewForFooterInSectionABXDSo6UIViewCSgSic7handler_tF":{"name":"viewForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:viewForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE31accessoryButtonTappedForRowWithABXDy10Foundation9IndexPathVc7handler_tF":{"name":"accessoryButtonTappedForRowWith(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:accessoryButtonTappedForRowWith:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE20shouldHighlightRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldHighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldHighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17didHighlightRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didHighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didHighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE19didUnhighlightRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didUnhighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didUnhighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE15willSelectRowAtABXD10Foundation9IndexPathVSgAGc7handler_tF":{"name":"willSelectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willSelectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17willDeselectRowAtABXD10Foundation9IndexPathVSgAGc7handler_tF":{"name":"willDeselectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDeselectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14didSelectRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didSelectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didSelectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16didDeselectRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didDeselectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didDeselectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE20editingStyleForRowAtABXDSC0ab11CellEditingE0O10Foundation9IndexPathVc7handler_tF":{"name":"editingStyleForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:editingStyleForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE032titleForDeleteConfirmationButtonE5RowAtABXDSSSg10Foundation9IndexPathVc7handler_tF":{"name":"titleForDeleteConfirmationButtonForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:titleForDeleteConfirmationButtonForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE19editActionsForRowAtABXDSaySo0abG6ActionCGSg10Foundation9IndexPathVc7handler_tF":{"name":"editActionsForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:editActionsForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE29shouldIndentWhileEditingRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldIndentWhileEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldIndentWhileEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE21willBeginEditingRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"willBeginEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willBeginEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18didEndEditingRowAtABXDy10Foundation9IndexPathVSgc7handler_tF":{"name":"didEndEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE31targetIndexPathForMoveFromRowAtABXD10Foundation0eF0VAG_AGtc7handler_tF":{"name":"targetIndexPathForMoveFromRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:targetIndexPathForMoveFromRowAt:toProposedIndexPath:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24indentationLevelForRowAtABXDSi10Foundation9IndexPathVc7handler_tF":{"name":"indentationLevelForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:indentationLevelForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22shouldShowMenuForRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldShowMenuForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldShowMenuForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16canPerformActionABXDSb10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"canPerformAction(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:canPerformAction:forRowAt:withSender:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE13performActionABXDy10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"performAction(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:performAction:forRowAt:withSender:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE13canFocusRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canFocusRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:canFocusRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17shouldUpdateFocusABXDSbSo0abfE7ContextCc7handler_tF":{"name":"shouldUpdateFocus(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldUpdateFocusIn:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14didUpdateFocusABXDySo0abfE7ContextC_So27UIFocusAnimationCoordinatorCtc7handler_tF":{"name":"didUpdateFocus(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didUpdateFocusIn:with:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE028indexPathForPreferredFocusedB0ABXD10Foundation05IndexE0VSgyc7handler_tF":{"name":"indexPathForPreferredFocusedView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s indexPathForPreferredFocusedView(in:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12numberOfRowsABXDS2ic7handler_tF":{"name":"numberOfRows(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:numberOfRowsInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE10cellForRowABXDSo0aB4CellC10Foundation9IndexPathVc7handler_tF":{"name":"cellForRow(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:cellForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18numberOfSectionsInABXDSiyc7handler_tF":{"name":"numberOfSectionsIn(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s numberOfSections(in:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23titleForHeaderInSectionABXDSSSgSic7handler_tF":{"name":"titleForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:titleForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23titleForFooterInSectionABXDSSSgSic7handler_tF":{"name":"titleForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:titleForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12canEditRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canEditRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:canEditRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12canMoveRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canMoveRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:canMoveRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18sectionIndexTitlesABXDSaySSGSgyc7handler_tF":{"name":"sectionIndexTitles(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s sectionIndexTitles(for:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE27sectionForSectionIndexTitleABXDSiSS_Sitc7handler_tF":{"name":"sectionForSectionIndexTitle(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:sectionForSectionIndexTitle:at:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE6commitABXDySC0aB16CellEditingStyleO_10Foundation9IndexPathVtc7handler_tF":{"name":"commit(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:commit:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE9moveRowAtABXDy10Foundation9IndexPathV_AGtc7handler_tF":{"name":"moveRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:moveRowAt:to:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE40leadingSwipeActionsConfigurationForRowAtABXDSo07UISwipefG0CSg10Foundation9IndexPathVc7handler_tF":{"name":"leadingSwipeActionsConfigurationForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:leadingSwipeActionsConfigurationForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE41trailingSwipeActionsConfigurationForRowAtABXDSo07UISwipefG0CSg10Foundation9IndexPathVc7handler_tF":{"name":"trailingSwipeActionsConfigurationForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:trailingSwipeActionsConfigurationForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE21shouldSpringLoadRowAtABXDSb10Foundation9IndexPathV_So32UISpringLoadedInteractionContext_ptc7handler_tF":{"name":"shouldSpringLoadRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldSpringLoadRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/c:@CM@Closures@@objc(cs)UITableView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UITableView"},"Extensions/UITableView.html":{"name":"UITableView"},"Extensions/UICollectionView.html":{"name":"UICollectionView"},"Extensions/UIPickerView.html":{"name":"UIPickerView"},"Extensions/UIScrollView.html":{"name":"UIScrollView"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresEABSo7UIImageCSg5image_SC0abC5StyleO5styleyyc7handlertcfc":{"name":"init(image:style:handler:)","abstract":"

    A convenience initializer for a UIBarButtonItem so that the tap event can","parent_name":"UIBarButtonItem"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresEABSo7UIImageCSg5image_AF19landscapeImagePhoneSC0abC5StyleO5styleyyc7handlertcfc":{"name":"init(image:landscapeImagePhone:style:handler:)","abstract":"

    A convenience initializer for a UIBarButtonItem so that the tap event can","parent_name":"UIBarButtonItem"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresEABSSSg5title_SC0abC5StyleO5styleyyc7handlertcfc":{"name":"init(title:style:handler:)","abstract":"

    A convenience initializer for a UIBarButtonItem so that the tap event can","parent_name":"UIBarButtonItem"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresEABSC0ab6SystemC0O03barbeC0_yyc7handlertcfc":{"name":"init(barButtonSystemItem:handler:)","abstract":"

    A convenience initializer for a UIBarButtonItem so that the tap event can","parent_name":"UIBarButtonItem"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresE5onTapyyyc7handler_tF":{"name":"onTap(handler:)","abstract":"

    This method is a convenience method to add a closure handler to a UIBarButtonItem.","parent_name":"UIBarButtonItem"},"Extensions/UIControl.html#/s:So9UIControlC8ClosuresE2onABXDSC0A6EventsV_yAB_So7UIEventCSgtc7handlertF":{"name":"on(_:handler:)","abstract":"

    Provide a handler that will be called for UIControlEvents option passed in.

    ","parent_name":"UIControl"},"Extensions/UISlider.html#/s:So8UISliderC8ClosuresE8onChangeABXDySfc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISlider"},"Extensions/UIStepper.html#/s:So9UIStepperC8ClosuresE8onChangeABXDySdc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIStepper"},"Extensions/UISegmentedControl.html#/s:So18UISegmentedControlC8ClosuresE8onChangeABXDySic7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISegmentedControl"},"Extensions/UIPageControl.html#/s:So13UIPageControlC8ClosuresE8onChangeABXDySic7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIPageControl"},"Extensions/UIDatePicker.html#/s:So12UIDatePickerC8ClosuresE8onChangeABXDy10Foundation4DateVc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIDatePicker"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE8onChangeABXDySSc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping a typical use for UITextField’s","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE14onEditingEndedABXDyyc7handler_tF":{"name":"onEditingEnded(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidEnd for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE14onEditingBeganABXDyyc7handler_tF":{"name":"onEditingBegan(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidBegin for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE8onReturnABXDyyc7handler_tF":{"name":"onReturn(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidEndOnExit for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE18shouldBeginEditingABXDSbyc7handler_tF":{"name":"shouldBeginEditing(handler:)","abstract":"

    This method determines if the text field should begin editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE15didBeginEditingABXDyyc7handler_tF":{"name":"didBeginEditing(handler:)","abstract":"

    This method determines if the text field did begin editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE16shouldEndEditingABXDSbyc7handler_tF":{"name":"shouldEndEditing(handler:)","abstract":"

    This method determines if the text field should end editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE13didEndEditingABXDyyc7handler_tF":{"name":"didEndEditing(handler:)","abstract":"

    This method determines if the text field did end editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE22shouldChangeCharactersABXDSbSC8_NSRangeV_SStc7handler_tF":{"name":"shouldChangeCharacters(handler:)","abstract":"

    This method determines if the text field should change its characters based on user input.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE18shouldChangeStringABXDSbSS_SStc7handler_tF":{"name":"shouldChangeString(handler:)","abstract":"

    This method determines if the text field should change its text based on user input.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE11shouldClearABXDSbyc7handler_tF":{"name":"shouldClear(handler:)","abstract":"

    This method determines if the text field should remove its text. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE12shouldReturnABXDSbyc7handler_tF":{"name":"shouldReturn(handler:)","abstract":"

    This method determines if the text field should process the return button. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/c:@CM@Closures@@objc(cs)UITextField(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UITextField"},"Extensions/UISwitch.html#/s:So8UISwitchC8ClosuresE8onChangeABXDySbc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISwitch"},"Extensions/UIButton.html#/s:So8UIButtonC8ClosuresE5onTapABXDyyc7handler_tF":{"name":"onTap(handler:)","abstract":"

    A convenience method wrapping a typical use for UIButton’s","parent_name":"UIButton"},"Extensions/UIButton.html":{"name":"UIButton"},"Extensions/UISwitch.html":{"name":"UISwitch"},"Extensions/UITextField.html":{"name":"UITextField"},"Extensions/UIDatePicker.html":{"name":"UIDatePicker"},"Extensions/UIPageControl.html":{"name":"UIPageControl"},"Extensions/UISegmentedControl.html":{"name":"UISegmentedControl"},"Extensions/UIStepper.html":{"name":"UIStepper"},"Extensions/UISlider.html":{"name":"UISlider"},"Extensions/UIControl.html":{"name":"UIControl"},"Extensions/UIBarButtonItem.html":{"name":"UIBarButtonItem"},"Controls.html":{"name":"Controls"},"Scrolling Views.html":{"name":"Scrolling Views"},"Gesture Recognizers.html":{"name":"Gesture Recognizers"},"Controllers.html":{"name":"Controllers"},"KVO.html":{"name":"KVO"}} \ No newline at end of file diff --git a/docs/docsets/Closures.docset/Contents/Resources/docSet.dsidx b/docs/docsets/Closures.docset/Contents/Resources/docSet.dsidx index 0ab5cd973f9a9e431848c529da464361955e72fa..8fefd0fdbfbb29a8e597b8c5ab135dcc4cb6b532 100644 GIT binary patch delta 3449 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 delta 1904 zcmZuyeNa@_6~E`cuYGU#y$8yN53}wr;T!pG1jL0UfT*w_Af|>B(iTY zKuoH_o%9ydCYm%~BB}T^SP4PfRGUNyU<~yOnTegIO`XY%Y3yVg>|16!(?9y=&7AwY z=bo8!&+nYy^_}N@N4dibxhaHDXty&jcnT$R9@#`#O-AYgHF=Fc5}8y>I!83(Td|nd zU|7kc_so5k6gzuu<|0J5^IlEgfr&FEjE-=yia1hotOzN(E8y6PX?`U1Za^0#^Z`mh zO$c5@!*Bw2sb|z?xUCkb7+qIBQQDP95yy^1tDJ;ELHjOgZkwQg?nRU&y67DlmP*3vLmOLK6}+e>e$Fdk7}T z=eg;^cq(UixH0{ADa2dQ=joiok%wuL7ZM}Tn0XUUo5#&Zc3iTy-29WbH$PK{u9B9F zNa2fgE(4j7YAGaQbcMW=ngEkVUqKO&o$2>T%22$#d`sr`P4%^PTc2%S9%lS1V-pXb zlG$uS_@tb3JJti4s9QkBm!=ziIkNzljpObpfX@idYl1(K@aUI&JS@8ay^DzAafYzf z%w@)n-^MZUHpHTLIUiF-mU;dTe$&TqXE#6|%jzhe%s&xLCjCFBL+jxP-Lnz86f>09{JP8+*!3zPGn+b$ z&=*1gKBD(GKpUJlj(4=1u?(MWq`mZ8Oj5Jw4ffZ7f=?Z0gP2h0Bf`;m41EJlEnxH= zt5FJPkovsxow7n!Y}M8*=@s#;7-^{%did}7&D<21&z@$(nO`!1>tF_5K)GfHbDs`; zyrw^f8|vdWlHg!Fskylh471Nqfbo};pIMAm=Y|=wXQYeFCbpkC4?#I*mQ(hKSsmUHy;iPF?@xl?}eUiuZuByP~gNmOe+}Z!ss2c{`Q-O{AB}UN#k=g ze>85S9xJRRt6!QopzI;gR#^zA1w5*!SD@jaX<%*(203)k~n{S zoQz)!p{*g1MGq~6USXZ7HU6#Un2m*z*0B%8?Rs2b2QWSS5QI^i4Gv(`J9sb@y0MVO zZ_)fRkkah~5EbAvlze(qrk(}Rz9ujfG3aTex|9leQhrr_Tz1*MwmoURZ|$&x)G5x2 zT_SJUZ&8JIewN?Gea}^~zh{e>i%c>8Gj7CrSb-^c4Yt4{^bI;^&g9eG`C-loy@Eq_ z6kE_x-~4Pt-Om5oIh{$>SJRJ6Asx!;{ZdGUG8*SKk(btZp%6;xQ7NJ2F0;bOY^@q{VLY0Al&ex_EO;T4*2ltg z!jd^()tv8#>uZ^M{So?195ljD0(sX%2KB~6n`Mcf&Y@^W5gEuy8+0YXSMzMFT8GrD x>KkgCS{HZ~yM3=O4AQGPWXkscsJ2sIW7Y^Ik+zJ5OsZZ*r9f#bsk;>7{sZz8LrVYv diff --git a/docs/docsets/Closures.tgz b/docs/docsets/Closures.tgz index 3b9e49603f683b28b0b0cadc7bb20b551952cdb9..99ef54d71ee303c61d01a779b533d553a4695159 100644 GIT binary patch literal 114653 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

      _E-Dt8r*$Kw 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 literal 112172 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
      O4cR?RBkT@Nnp?)6H`B3QFx{xu745 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 diff --git a/docs/index.html b/docs/index.html index fc875b6..affd9ac 100644 --- a/docs/index.html +++ b/docs/index.html @@ -57,6 +57,9 @@

      +
    -
  • Create a scalable mechanism to easily add addtional closure wrappers in the future.
  • +
  • Create a scalable mechanism to easily add additional closure wrappers in the future.
  • It is our goal to become irrelevant via sherlock. @@ -345,7 +348,7 @@

    License diff --git a/docs/search.json b/docs/search.json index 29321a5..f36cd1a 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -{"Extensions/_5FKeyValueCodingAndObserving.html#/s:10Foundation27_KeyValueCodingAndObservingP8ClosuresE7observeAA05NSKeyC11ObservationCs0B4PathCyxqd__G_SC0icF7OptionsV7optionsSbxc5untilyx_AA0iC14ObservedChangeVyqd__Gtc13changeHandlertlF":{"name":"observe(_:options:until:changeHandler:)","abstract":"

    This convenience method puts only a tiny bit of polish on","parent_name":"_KeyValueCodingAndObserving"},"Extensions/_5FKeyValueCodingAndObserving.html":{"name":"_KeyValueCodingAndObserving"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV7rawInfos10DictionaryVySSypGv":{"name":"rawInfo","abstract":"

    The original Dictionary received from UIPickerController’s","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV4typeAbCE11MediaFilterVv":{"name":"type","abstract":"

    The type of media picked by the user, converted to a","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV13originalImageSo0A0CSgv":{"name":"originalImage","abstract":"

    The original UIImage that the user selected from their","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV11editedImageSo0A0CSgv":{"name":"editedImage","abstract":"

    The edited image after any croping, resizing, etc has occurred.","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8cropRectSC6CGRectVSgv":{"name":"cropRect","abstract":"

    This is equivalent to the UIImagePickerControllerCropRect key","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8movieUrl10Foundation3URLVSgv":{"name":"movieUrl","abstract":"

    The fileUrl of the movie that was picked. This is equivalent to","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8metaDataSo12NSDictionaryCSgv":{"name":"metaData","abstract":"

    This is equivalent to the UIImagePickerControllerMediaMetadata key value from rawInfo.

    ","parent_name":"Result"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV5imageAEvZ":{"name":"image","abstract":"

    Tells the UIImagePickerController to allow images","parent_name":"MediaFilter"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV5movieAEvZ":{"name":"movie","abstract":"

    Tells the UIImagePickerController to allow movies","parent_name":"MediaFilter"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV3allAEvZ":{"name":"all","abstract":"

    Tells the UIImagePickerController to allow all","parent_name":"MediaFilter"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresEABSC0abC10SourceTypeO6source_AbCE11MediaFilterV5allowSo6UIViewCSg13cameraOverlaySb19showsCameraControlsyABc9didCancelyAbCE6ResultV_ABtc0Q4Picktcfc":{"name":"init(source:allow:cameraOverlay:showsCameraControls:didCancel:didPick:)","abstract":"

    This is a convenience initializer that allows you to setup your","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE7presentABXDSo06UIViewC0C4from_Sb7animate_yycSg10onCompletet9animationtF":{"name":"present(from:animation:)","abstract":"

    A convenience method that will present the UIImagePickerController. It will","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE21didFinishPickingMediaABXDys10DictionaryVySSypGc7handler_tF":{"name":"didFinishPickingMedia(handler:)","abstract":"

    Equivalent to implementing UIImagePickerControllerDelegate’s imagePickerController(_:didFinishPickingMediaWithInfo:) method

    ","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE9didCancelABXDyyc7handler_tF":{"name":"didCancel(handler:)","abstract":"

    Equivalent to implementing UIImagePickerControllerDelegate’s imagePickerControllerDidCancel(_:) method

    ","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController/MediaFilter.html":{"name":"MediaFilter","abstract":"

    A wrapper around kUTType. Eventually these will","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController/Result.html":{"name":"Result","abstract":"

    This result object is a only a wrapper around the loosely","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/c:@CM@Closures@@objc(cs)UIImagePickerController(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html":{"name":"UIImagePickerController"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE13addTapGestureSo05UITapE10RecognizerCSi12tapsRequired_Si07touchesI0yAFc7handlertF":{"name":"addTapGesture(tapsRequired:touchesRequired:handler:)","abstract":"

    A convenience method that adds a UITapGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE19addLongPressGestureSo06UILongeF10RecognizerCSi12tapsRequired_Si07touchesJ0Sd11minDuration12CoreGraphics7CGFloatV17allowableMovementyAFc7handlertF":{"name":"addLongPressGesture(tapsRequired:touchesRequired:minDuration:allowableMovement:handler:)","abstract":"

    A convenience method that adds a UILongPressGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE15addPinchGestureSo07UIPinchE10RecognizerCyAFc7handler_tF":{"name":"addPinchGesture(handler:)","abstract":"

    A convenience method that adds a UIPinchGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE15addSwipeGestureSo07UISwipeE10RecognizerCSC0feG9DirectionV9direction_Si15touchesRequiredyAFc7handlertF":{"name":"addSwipeGesture(direction:touchesRequired:handler:)","abstract":"

    A convenience method that adds a UISwipeGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE18addRotationGestureSo010UIRotationE10RecognizerCyAFc7handler_tF":{"name":"addRotationGesture(handler:)","abstract":"

    A convenience method that adds a UIRotationGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE13addPanGestureSo05UIPanE10RecognizerCSi10minTouches_Si03maxI0yAFc7handlertF":{"name":"addPanGesture(minTouches:maxTouches:handler:)","abstract":"

    A convenience method that adds a UIPanGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE23addScreenEdgePanGestureSo08UIScreenefG10RecognizerCSC06UIRectE0V5edges_yAFc7handlertF":{"name":"addScreenEdgePanGesture(edges:handler:)","abstract":"

    A convenience method that adds a UIScreenEdgePanGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIScreenEdgePanGestureRecognizer.html#/s:So32UIScreenEdgePanGestureRecognizerC8ClosuresEABSC06UIRectB0V5edges_yABc7handlertcfc":{"name":"init(edges:handler:)","abstract":"

    A convenience initializer for a UIScreenEdgePanGestureRecognizer so that it","parent_name":"UIScreenEdgePanGestureRecognizer"},"Extensions/UIRotationGestureRecognizer.html#/s:So27UIRotationGestureRecognizerC8ClosuresEAByABc7handler_tcfc":{"name":"init(handler:)","abstract":"

    A convenience initializer for a UIRotationGestureRecognizer so that it","parent_name":"UIRotationGestureRecognizer"},"Extensions/UISwipeGestureRecognizer.html#/s:So24UISwipeGestureRecognizerC8ClosuresEABSC0abC9DirectionV9direction_Si15touchesRequiredyABc7handlertcfc":{"name":"init(direction:touchesRequired:handler:)","abstract":"

    A convenience initializer for a UISwipeGestureRecognizer so that it","parent_name":"UISwipeGestureRecognizer"},"Extensions/UIPanGestureRecognizer.html#/s:So22UIPanGestureRecognizerC8ClosuresEABSi10minTouches_Si03maxF0yABc7handlertcfc":{"name":"init(minTouches:maxTouches:handler:)","abstract":"

    A convenience initializer for a UIPanGestureRecognizer so that it","parent_name":"UIPanGestureRecognizer"},"Extensions/UIPinchGestureRecognizer.html#/s:So24UIPinchGestureRecognizerC8ClosuresEAByABc7handler_tcfc":{"name":"init(handler:)","abstract":"

    A convenience initializer for a UIPinchGestureRecognizer so that it","parent_name":"UIPinchGestureRecognizer"},"Extensions/UILongPressGestureRecognizer.html#/s:So28UILongPressGestureRecognizerC8ClosuresEABSi12tapsRequired_Si07touchesG0Sd11minDuration12CoreGraphics7CGFloatV17allowableMovementyABc7handlertcfc":{"name":"init(tapsRequired:touchesRequired:minDuration:allowableMovement:handler:)","abstract":"

    A convenience initializer for a UILongPressGestureRecognizer so that it","parent_name":"UILongPressGestureRecognizer"},"Extensions/UITapGestureRecognizer.html#/s:So22UITapGestureRecognizerC8ClosuresEABSi12tapsRequired_Si07touchesF0yABc7handlertcfc":{"name":"init(tapsRequired:touchesRequired:handler:)","abstract":"

    A convenience initializer for a UITapGestureRecognizer so that it","parent_name":"UITapGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE11shouldBeginABXDSbyc7handler_tF":{"name":"shouldBegin(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizerShouldBegin(:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE33shouldRecognizeSimultaneouslyWithABXDSbABc7handler_tF":{"name":"shouldRecognizeSimultaneouslyWith(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldRecognizeSimultaneouslyWith:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE22shouldRequireFailureOfABXDSbABc7handler_tF":{"name":"shouldRequireFailureOf(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldRequireFailureOf:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE24shouldBeRequiredToFailByABXDSbABc7handler_tF":{"name":"shouldBeRequiredToFailBy(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldBeRequiredToFailBy:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE18shouldReceiveTouchABXDSbSo7UITouchCc7handler_tF":{"name":"shouldReceiveTouch(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldReceive:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE18shouldReceivePressABXDSbSo7UIPressCc7handler_tF":{"name":"shouldReceivePress(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldReceive:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/c:@CM@Closures@@objc(cs)UIGestureRecognizer(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html":{"name":"UIGestureRecognizer"},"Extensions/UITapGestureRecognizer.html":{"name":"UITapGestureRecognizer"},"Extensions/UILongPressGestureRecognizer.html":{"name":"UILongPressGestureRecognizer"},"Extensions/UIPinchGestureRecognizer.html":{"name":"UIPinchGestureRecognizer"},"Extensions/UIPanGestureRecognizer.html":{"name":"UIPanGestureRecognizer"},"Extensions/UISwipeGestureRecognizer.html":{"name":"UISwipeGestureRecognizer"},"Extensions/UIRotationGestureRecognizer.html":{"name":"UIRotationGestureRecognizer"},"Extensions/UIScreenEdgePanGestureRecognizer.html":{"name":"UIScreenEdgePanGestureRecognizer"},"Extensions/UIView.html":{"name":"UIView"},"Gesture Recognizers.html#/s:8Closures9configureyx7gesture_yxc7handlertSo19UIGestureRecognizerCRbzlF":{"name":"configure(gesture:handler:)","abstract":"

    This method is a convenience method to add a closure handler to a custom subclass of"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE9didScrollABXDyABc7handler_tF":{"name":"didScroll(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidScroll(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE7didZoomABXDyABc7handler_tF":{"name":"didZoom(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidZoom(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE17willBeginDraggingABXDyABc7handler_tF":{"name":"willBeginDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE15willEndDraggingABXDyAB_SC7CGPointVSpyAFGtc7handler_tF":{"name":"willEndDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillEndDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE14didEndDraggingABXDyAB_Sbtc7handler_tF":{"name":"didEndDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE21willBeginDeceleratingABXDyABc7handler_tF":{"name":"willBeginDecelerating(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginDecelerating(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE18didEndDeceleratingABXDyABc7handler_tF":{"name":"didEndDecelerating(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndDecelerating(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE24didEndScrollingAnimationABXDyABc7handler_tF":{"name":"didEndScrollingAnimation(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndScrollingAnimation(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE16viewForZoomingInABXDSo6UIViewCSgABc7handler_tF":{"name":"viewForZoomingIn(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s viewForZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE16willBeginZoomingABXDyAB_So6UIViewCSgtc7handler_tF":{"name":"willBeginZooming(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE13didEndZoomingABXDyAB_So6UIViewCSg12CoreGraphics7CGFloatVtc7handler_tF":{"name":"didEndZooming(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE17shouldScrollToTopABXDSbABc7handler_tF":{"name":"shouldScrollToTop(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewShouldScrollToTop(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE14didScrollToTopABXDyABc7handler_tF":{"name":"didScrollToTop(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidScrollToTop(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE29didChangeAdjustedContentInsetABXDyABc7handler_tF":{"name":"didChangeAdjustedContentInset(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidChangeAdjustedContentInset(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/c:@CM@Closures@@objc(cs)UIScrollView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIScrollView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE10addStringsABXDSaySSG_ySS_S2itc9didSelecttF":{"name":"addStrings(_:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11addElementsABXDSayxG_SSx_S2itc8rowTitleyx_S2itc9didSelecttlF":{"name":"addElements(_:rowTitle:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11addElementsABXDSayxG_So6UIViewCx_AGSgS2itc03rowB0yx_S2itc9didSelecttlF":{"name":"addElements(_:rowView:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySaySSGG_ySS_S2itc9didSelecttF":{"name":"addComponents(_:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySayxGG_SSx_S2itc8rowTitleyx_S2itc9didSelecttlF":{"name":"addComponents(_:rowTitle:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySayxGG_So6UIViewCx_AHSgS2itc03rowB0yx_S2itc9didSelecttlF":{"name":"addComponents(_:rowView:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE21rowHeightForComponentABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"rowHeightForComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:rowHeightForComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE17widthForComponentABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"widthForComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:widthForComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11titleForRowABXDSSSgSi_Sitc7handler_tF":{"name":"titleForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:titleForRow:forComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE21attributedTitleForRowABXDSo18NSAttributedStringCSgSi_Sitc7handler_tF":{"name":"attributedTitleForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:attributedTitleForRow:forComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE10viewForRowABXDSo6UIViewCSi_SiAFSgtc7handler_tF":{"name":"viewForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:viewForRow:forComponent:reusing:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE12didSelectRowABXDySi_Sitc7handler_tF":{"name":"didSelectRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:didSelectRow:inComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE18numberOfComponentsABXDSiyc7handler_tF":{"name":"numberOfComponents(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDataSource’s numberOfComponents(in:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE23numberOfRowsInComponentABXDS2ic7handler_tF":{"name":"numberOfRowsInComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDataSource’s pickerView(_:numberOfRowsInComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/c:@CM@Closures@@objc(cs)UIPickerView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UIPickerView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE15addFlowElementsABXDSayxG_q_m4cellSSSg0G7NibNameyx_q_zSitc4itemtSo0aB4CellCRb_r0_lF":{"name":"addFlowElements(_:cell:cellNibName:item:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE21shouldHighlightItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldHighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldHighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18didHighlightItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didHighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didHighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE20didUnhighlightItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didUnhighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didUnhighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18shouldSelectItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldSelectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldSelectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE20shouldDeselectItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldDeselectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldDeselectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE15didSelectItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didSelectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didSelectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE17didDeselectItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didDeselectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didDeselectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE11willDisplayABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplay(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:willDisplay:forItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE024willDisplaySupplementaryB0ABXDySS_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplaySupplementaryView(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:willDisplaySupplementaryView:forElementKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16didEndDisplayingABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplaying(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didEndDisplaying:forItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE029didEndDisplayingSupplementaryB0ABXDySS_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplayingSupplementaryView(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didEndDisplayingSupplementaryView:forElementOfKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE23shouldShowMenuForItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldShowMenuForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldShowMenuForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16canPerformActionABXDSb10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"canPerformAction(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:canPerformAction:forItemAt:withSender:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13performActionABXDy10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"performAction(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:performAction:forItemAt:withSender:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE022transitionLayoutForOldE0ABXDSo0ab10TransitionE0CSo0abE0C_AHtc7handler_tF":{"name":"transitionLayoutForOldLayout(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:transitionLayoutForOldLayout:newLayout:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE14canFocusItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canFocusItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:canFocusItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE19shouldUpdateFocusInABXDSbSo0abfE7ContextCc7handler_tF":{"name":"shouldUpdateFocusIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldUpdateFocusIn:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16didUpdateFocusInABXDySo0abfE7ContextC_So27UIFocusAnimationCoordinatorCtc7handler_tF":{"name":"didUpdateFocusIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didUpdateFocusIn:with:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE028indexPathForPreferredFocusedB2InABXD10Foundation05IndexE0VSgyc7handler_tF":{"name":"indexPathForPreferredFocusedViewIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s indexPathForPreferredFocusedVies(in:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE32targetIndexPathForMoveFromItemAtABXD10Foundation0eF0VAG_AGtc7handler_tF":{"name":"targetIndexPathForMoveFromItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:targetIndexPathForMoveFromItemAt:toProposedIndexPath:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE030targetContentOffsetForProposedeF0ABXDSC7CGPointVAFc7handler_tF":{"name":"targetContentOffsetForProposedContentOffset(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:targetContentOffsetForProposedContentOffset:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22shouldSpringLoadItemAtABXDSb10Foundation9IndexPathV_So32UISpringLoadedInteractionContext_ptc7handler_tF":{"name":"shouldSpringLoadItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldSpringLoadItemAt:with:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22numberOfItemsInSectionABXDS2ic7handler_tF":{"name":"numberOfItemsInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:numberOfItemsInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13cellForItemAtABXDSo0aB4CellC10Foundation9IndexPathVc7handler_tF":{"name":"cellForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:cellForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18numberOfSectionsInABXDSiyc7handler_tF":{"name":"numberOfSectionsIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s numberOfSections(in:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE33viewForSupplementaryElementOfKindABXDSo0a8ReusableB0CSS_10Foundation9IndexPathVtc7handler_tF":{"name":"viewForSupplementaryElementOfKind(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:viewForSupplementaryElementOfKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13canMoveItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canMoveItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:canMoveItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE10moveItemAtABXDy10Foundation9IndexPathV_AGtc7handler_tF":{"name":"moveItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:moveItemAt:to:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE14indexTitlesForABXDSaySSGyc7handler_tF":{"name":"indexTitlesFor(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s indexTitles(for:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22indexPathForIndexTitleABXD10Foundation0gE0VSS_Sitc7handler_tF":{"name":"indexPathForIndexTitle(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:indexPathForIndexTitle:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13sizeForItemAtABXDSC6CGSizeV10Foundation9IndexPathVc7handler_tF":{"name":"sizeForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:sizeForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE17insetForSectionAtABXDSC12UIEdgeInsetsVSic7handler_tF":{"name":"insetForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionV(_:layout:insetForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE30minimumLineSpacingForSectionAtABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"minimumLineSpacingForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:minimumLineSpacingForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE35minimumInteritemSpacingForSectionAtABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"minimumInteritemSpacingForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:minimumInteritemSpacingForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE31referenceSizeForHeaderInSectionABXDSC6CGSizeVSic7handler_tF":{"name":"referenceSizeForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:referenceSizeForHeaderInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE31referenceSizeForFooterInSectionABXDSC6CGSizeVSic7handler_tF":{"name":"referenceSizeForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:referenceSizeForFooterInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/c:@CM@Closures@@objc(cs)UICollectionView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UICollectionView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addElementsABXDSayxG_q_m4cellSSSg0F7NibNameyx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addElements(_:cell:cellNibName:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addSectionsABXDSaySayxGG_q_m4cellSSSg0F7NibNameSo6UIViewCAE_Sitc06headerB0yx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addSections(_:cell:cellNibName:headerView:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addSectionsABXDSaySayxGG_q_m4cellSSSg0F7NibNameSSAE_SitcSg11headerTitleyx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addSections(_:cell:cellNibName:headerTitle:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11willDisplayABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplay(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplay:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE017willDisplayHeaderB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"willDisplayHeaderView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplayHeaderView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE017willDisplayFooterB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"willDisplayFooterView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplayFooterView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16didEndDisplayingABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplaying(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplaying:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE022didEndDisplayingHeaderB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"didEndDisplayingHeaderView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplayingHeaderView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE022didEndDisplayingFooterB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"didEndDisplayingFooterView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplayingFooterView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14heightForRowAtABXD12CoreGraphics7CGFloatV10Foundation9IndexPathVc7handler_tF":{"name":"heightForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24heightForHeaderInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"heightForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24heightForFooterInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"heightForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23estimatedHeightForRowAtABXD12CoreGraphics7CGFloatV10Foundation9IndexPathVc7handler_tF":{"name":"estimatedHeightForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE33estimatedHeightForHeaderInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"estimatedHeightForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE33estimatedHeightForFooterInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"estimatedHeightForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22viewForHeaderInSectionABXDSo6UIViewCSgSic7handler_tF":{"name":"viewForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:viewForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22viewForFooterInSectionABXDSo6UIViewCSgSic7handler_tF":{"name":"viewForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:viewForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE31accessoryButtonTappedForRowWithABXDy10Foundation9IndexPathVc7handler_tF":{"name":"accessoryButtonTappedForRowWith(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:accessoryButtonTappedForRowWith:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE20shouldHighlightRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldHighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldHighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17didHighlightRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didHighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didHighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE19didUnhighlightRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didUnhighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didUnhighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE15willSelectRowAtABXD10Foundation9IndexPathVSgAGc7handler_tF":{"name":"willSelectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willSelectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17willDeselectRowAtABXD10Foundation9IndexPathVSgAGc7handler_tF":{"name":"willDeselectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDeselectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14didSelectRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didSelectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didSelectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16didDeselectRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didDeselectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didDeselectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE20editingStyleForRowAtABXDSC0ab11CellEditingE0O10Foundation9IndexPathVc7handler_tF":{"name":"editingStyleForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:editingStyleForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE032titleForDeleteConfirmationButtonE5RowAtABXDSSSg10Foundation9IndexPathVc7handler_tF":{"name":"titleForDeleteConfirmationButtonForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:titleForDeleteConfirmationButtonForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE19editActionsForRowAtABXDSaySo0abG6ActionCGSg10Foundation9IndexPathVc7handler_tF":{"name":"editActionsForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:editActionsForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE29shouldIndentWhileEditingRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldIndentWhileEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldIndentWhileEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE21willBeginEditingRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"willBeginEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willBeginEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18didEndEditingRowAtABXDy10Foundation9IndexPathVSgc7handler_tF":{"name":"didEndEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE31targetIndexPathForMoveFromRowAtABXD10Foundation0eF0VAG_AGtc7handler_tF":{"name":"targetIndexPathForMoveFromRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:targetIndexPathForMoveFromRowAt:toProposedIndexPath:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24indentationLevelForRowAtABXDSi10Foundation9IndexPathVc7handler_tF":{"name":"indentationLevelForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:indentationLevelForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22shouldShowMenuForRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldShowMenuForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldShowMenuForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16canPerformActionABXDSb10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"canPerformAction(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:canPerformAction:forRowAt:withSender:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE13performActionABXDy10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"performAction(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:performAction:forRowAt:withSender:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE13canFocusRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canFocusRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:canFocusRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17shouldUpdateFocusABXDSbSo0abfE7ContextCc7handler_tF":{"name":"shouldUpdateFocus(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldUpdateFocusIn:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14didUpdateFocusABXDySo0abfE7ContextC_So27UIFocusAnimationCoordinatorCtc7handler_tF":{"name":"didUpdateFocus(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didUpdateFocusIn:with:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE028indexPathForPreferredFocusedB0ABXD10Foundation05IndexE0VSgyc7handler_tF":{"name":"indexPathForPreferredFocusedView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s indexPathForPreferredFocusedView(in:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12numberOfRowsABXDS2ic7handler_tF":{"name":"numberOfRows(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:numberOfRowsInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE10cellForRowABXDSo0aB4CellC10Foundation9IndexPathVc7handler_tF":{"name":"cellForRow(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:cellForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18numberOfSectionsInABXDSiyc7handler_tF":{"name":"numberOfSectionsIn(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s numberOfSections(in:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23titleForHeaderInSectionABXDSSSgSic7handler_tF":{"name":"titleForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:titleForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23titleForFooterInSectionABXDSSSgSic7handler_tF":{"name":"titleForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:titleForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12canEditRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canEditRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:canEditRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12canMoveRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canMoveRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:canMoveRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18sectionIndexTitlesABXDSaySSGSgyc7handler_tF":{"name":"sectionIndexTitles(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s sectionIndexTitles(for:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE27sectionForSectionIndexTitleABXDSiSS_Sitc7handler_tF":{"name":"sectionForSectionIndexTitle(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:sectionForSectionIndexTitle:at:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE6commitABXDySC0aB16CellEditingStyleO_10Foundation9IndexPathVtc7handler_tF":{"name":"commit(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:commit:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE9moveRowAtABXDy10Foundation9IndexPathV_AGtc7handler_tF":{"name":"moveRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:moveRowAt:to:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE40leadingSwipeActionsConfigurationForRowAtABXDSo07UISwipefG0CSg10Foundation9IndexPathVc7handler_tF":{"name":"leadingSwipeActionsConfigurationForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:leadingSwipeActionsConfigurationForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE41trailingSwipeActionsConfigurationForRowAtABXDSo07UISwipefG0CSg10Foundation9IndexPathVc7handler_tF":{"name":"trailingSwipeActionsConfigurationForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:trailingSwipeActionsConfigurationForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE21shouldSpringLoadRowAtABXDSb10Foundation9IndexPathV_So32UISpringLoadedInteractionContext_ptc7handler_tF":{"name":"shouldSpringLoadRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldSpringLoadRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/c:@CM@Closures@@objc(cs)UITableView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UITableView"},"Extensions/UITableView.html":{"name":"UITableView"},"Extensions/UICollectionView.html":{"name":"UICollectionView"},"Extensions/UIPickerView.html":{"name":"UIPickerView"},"Extensions/UIScrollView.html":{"name":"UIScrollView"},"Extensions/UIControl.html#/s:So9UIControlC8ClosuresE2onABXDSC0A6EventsV_yAB_So7UIEventCSgtc7handlertF":{"name":"on(_:handler:)","abstract":"

    Provide a handler that will be called for UIControlEvents option passed in.

    ","parent_name":"UIControl"},"Extensions/UISlider.html#/s:So8UISliderC8ClosuresE8onChangeABXDySfc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISlider"},"Extensions/UIStepper.html#/s:So9UIStepperC8ClosuresE8onChangeABXDySdc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIStepper"},"Extensions/UISegmentedControl.html#/s:So18UISegmentedControlC8ClosuresE8onChangeABXDySic7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISegmentedControl"},"Extensions/UIPageControl.html#/s:So13UIPageControlC8ClosuresE8onChangeABXDySic7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIPageControl"},"Extensions/UIDatePicker.html#/s:So12UIDatePickerC8ClosuresE8onChangeABXDy10Foundation4DateVc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIDatePicker"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE8onChangeABXDySSc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping a typical use for UITextField’s","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE14onEditingEndedABXDyyc7handler_tF":{"name":"onEditingEnded(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidEnd for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE14onEditingBeganABXDyyc7handler_tF":{"name":"onEditingBegan(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidBegin for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE8onReturnABXDyyc7handler_tF":{"name":"onReturn(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidEndOnExit for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE18shouldBeginEditingABXDSbyc7handler_tF":{"name":"shouldBeginEditing(handler:)","abstract":"

    This method determines if the text field should begin editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE15didBeginEditingABXDyyc7handler_tF":{"name":"didBeginEditing(handler:)","abstract":"

    This method determines if the text field did begin editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE16shouldEndEditingABXDSbyc7handler_tF":{"name":"shouldEndEditing(handler:)","abstract":"

    This method determines if the text field should end editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE13didEndEditingABXDyyc7handler_tF":{"name":"didEndEditing(handler:)","abstract":"

    This method determines if the text field did end editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE22shouldChangeCharactersABXDSbSC8_NSRangeV_SStc7handler_tF":{"name":"shouldChangeCharacters(handler:)","abstract":"

    This method determines if the text field should change its characters based on user input.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE18shouldChangeStringABXDSbSS_SStc7handler_tF":{"name":"shouldChangeString(handler:)","abstract":"

    This method determines if the text field should change its text based on user input.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE11shouldClearABXDSbyc7handler_tF":{"name":"shouldClear(handler:)","abstract":"

    This method determines if the text field should remove its text. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE12shouldReturnABXDSbyc7handler_tF":{"name":"shouldReturn(handler:)","abstract":"

    This method determines if the text field should process the return button. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/c:@CM@Closures@@objc(cs)UITextField(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UITextField"},"Extensions/UISwitch.html#/s:So8UISwitchC8ClosuresE8onChangeABXDySbc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISwitch"},"Extensions/UIButton.html#/s:So8UIButtonC8ClosuresE5onTapABXDyyc7handler_tF":{"name":"onTap(handler:)","abstract":"

    A convenience method wrapping a typical use for UIButton’s","parent_name":"UIButton"},"Extensions/UIButton.html":{"name":"UIButton"},"Extensions/UISwitch.html":{"name":"UISwitch"},"Extensions/UITextField.html":{"name":"UITextField"},"Extensions/UIDatePicker.html":{"name":"UIDatePicker"},"Extensions/UIPageControl.html":{"name":"UIPageControl"},"Extensions/UISegmentedControl.html":{"name":"UISegmentedControl"},"Extensions/UIStepper.html":{"name":"UIStepper"},"Extensions/UISlider.html":{"name":"UISlider"},"Extensions/UIControl.html":{"name":"UIControl"},"Controls.html":{"name":"Controls"},"Scrolling Views.html":{"name":"Scrolling Views"},"Gesture Recognizers.html":{"name":"Gesture Recognizers"},"Controllers.html":{"name":"Controllers"},"KVO.html":{"name":"KVO"}} \ No newline at end of file +{"Extensions/_5FKeyValueCodingAndObserving.html#/s:10Foundation27_KeyValueCodingAndObservingP8ClosuresE7observeAA05NSKeyC11ObservationCs0B4PathCyxqd__G_SC0icF7OptionsV7optionsSbxc5untilyx_AA0iC14ObservedChangeVyqd__Gtc13changeHandlertlF":{"name":"observe(_:options:until:changeHandler:)","abstract":"

    This convenience method puts only a tiny bit of polish on","parent_name":"_KeyValueCodingAndObserving"},"Extensions/_5FKeyValueCodingAndObserving.html":{"name":"_KeyValueCodingAndObserving"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV7rawInfos10DictionaryVySSypGv":{"name":"rawInfo","abstract":"

    The original Dictionary received from UIPickerController’s","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV4typeAbCE11MediaFilterVv":{"name":"type","abstract":"

    The type of media picked by the user, converted to a","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV13originalImageSo0A0CSgv":{"name":"originalImage","abstract":"

    The original UIImage that the user selected from their","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV11editedImageSo0A0CSgv":{"name":"editedImage","abstract":"

    The edited image after any croping, resizing, etc has occurred.","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8cropRectSC6CGRectVSgv":{"name":"cropRect","abstract":"

    This is equivalent to the UIImagePickerControllerCropRect key","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8movieUrl10Foundation3URLVSgv":{"name":"movieUrl","abstract":"

    The fileUrl of the movie that was picked. This is equivalent to","parent_name":"Result"},"Extensions/UIImagePickerController/Result.html#/s:So23UIImagePickerControllerC8ClosuresE6ResultV8metaDataSo12NSDictionaryCSgv":{"name":"metaData","abstract":"

    This is equivalent to the UIImagePickerControllerMediaMetadata key value from rawInfo.

    ","parent_name":"Result"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV5imageAEvZ":{"name":"image","abstract":"

    Tells the UIImagePickerController to allow images","parent_name":"MediaFilter"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV5movieAEvZ":{"name":"movie","abstract":"

    Tells the UIImagePickerController to allow movies","parent_name":"MediaFilter"},"Extensions/UIImagePickerController/MediaFilter.html#/s:So23UIImagePickerControllerC8ClosuresE11MediaFilterV3allAEvZ":{"name":"all","abstract":"

    Tells the UIImagePickerController to allow all","parent_name":"MediaFilter"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresEABSC0abC10SourceTypeO6source_AbCE11MediaFilterV5allowSo6UIViewCSg13cameraOverlaySb19showsCameraControlsyABc9didCancelyAbCE6ResultV_ABtc0Q4Picktcfc":{"name":"init(source:allow:cameraOverlay:showsCameraControls:didCancel:didPick:)","abstract":"

    This is a convenience initializer that allows you to setup your","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE7presentABXDSo06UIViewC0C4from_Sb7animate_yycSg10onCompletet9animationtF":{"name":"present(from:animation:)","abstract":"

    A convenience method that will present the UIImagePickerController. It will","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE21didFinishPickingMediaABXDys10DictionaryVySSypGc7handler_tF":{"name":"didFinishPickingMedia(handler:)","abstract":"

    Equivalent to implementing UIImagePickerControllerDelegate’s imagePickerController(_:didFinishPickingMediaWithInfo:) method

    ","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/s:So23UIImagePickerControllerC8ClosuresE9didCancelABXDyyc7handler_tF":{"name":"didCancel(handler:)","abstract":"

    Equivalent to implementing UIImagePickerControllerDelegate’s imagePickerControllerDidCancel(_:) method

    ","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController/MediaFilter.html":{"name":"MediaFilter","abstract":"

    A wrapper around kUTType. Eventually these will","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController/Result.html":{"name":"Result","abstract":"

    This result object is a only a wrapper around the loosely","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html#/c:@CM@Closures@@objc(cs)UIImagePickerController(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIImagePickerController"},"Extensions/UIImagePickerController.html":{"name":"UIImagePickerController"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE13addTapGestureSo05UITapE10RecognizerCSi12tapsRequired_Si07touchesI0yAFc7handlertF":{"name":"addTapGesture(tapsRequired:touchesRequired:handler:)","abstract":"

    A convenience method that adds a UITapGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE19addLongPressGestureSo06UILongeF10RecognizerCSi12tapsRequired_Si07touchesJ0Sd11minDuration12CoreGraphics7CGFloatV17allowableMovementyAFc7handlertF":{"name":"addLongPressGesture(tapsRequired:touchesRequired:minDuration:allowableMovement:handler:)","abstract":"

    A convenience method that adds a UILongPressGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE15addPinchGestureSo07UIPinchE10RecognizerCyAFc7handler_tF":{"name":"addPinchGesture(handler:)","abstract":"

    A convenience method that adds a UIPinchGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE15addSwipeGestureSo07UISwipeE10RecognizerCSC0feG9DirectionV9direction_Si15touchesRequiredyAFc7handlertF":{"name":"addSwipeGesture(direction:touchesRequired:handler:)","abstract":"

    A convenience method that adds a UISwipeGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE18addRotationGestureSo010UIRotationE10RecognizerCyAFc7handler_tF":{"name":"addRotationGesture(handler:)","abstract":"

    A convenience method that adds a UIRotationGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE13addPanGestureSo05UIPanE10RecognizerCSi10minTouches_Si03maxI0yAFc7handlertF":{"name":"addPanGesture(minTouches:maxTouches:handler:)","abstract":"

    A convenience method that adds a UIPanGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIView.html#/s:So6UIViewC8ClosuresE23addScreenEdgePanGestureSo08UIScreenefG10RecognizerCSC06UIRectE0V5edges_yAFc7handlertF":{"name":"addScreenEdgePanGesture(edges:handler:)","abstract":"

    A convenience method that adds a UIScreenEdgePanGestureRecognizer to a view, while also","parent_name":"UIView"},"Extensions/UIScreenEdgePanGestureRecognizer.html#/s:So32UIScreenEdgePanGestureRecognizerC8ClosuresEABSC06UIRectB0V5edges_yABc7handlertcfc":{"name":"init(edges:handler:)","abstract":"

    A convenience initializer for a UIScreenEdgePanGestureRecognizer so that it","parent_name":"UIScreenEdgePanGestureRecognizer"},"Extensions/UIRotationGestureRecognizer.html#/s:So27UIRotationGestureRecognizerC8ClosuresEAByABc7handler_tcfc":{"name":"init(handler:)","abstract":"

    A convenience initializer for a UIRotationGestureRecognizer so that it","parent_name":"UIRotationGestureRecognizer"},"Extensions/UISwipeGestureRecognizer.html#/s:So24UISwipeGestureRecognizerC8ClosuresEABSC0abC9DirectionV9direction_Si15touchesRequiredyABc7handlertcfc":{"name":"init(direction:touchesRequired:handler:)","abstract":"

    A convenience initializer for a UISwipeGestureRecognizer so that it","parent_name":"UISwipeGestureRecognizer"},"Extensions/UIPanGestureRecognizer.html#/s:So22UIPanGestureRecognizerC8ClosuresEABSi10minTouches_Si03maxF0yABc7handlertcfc":{"name":"init(minTouches:maxTouches:handler:)","abstract":"

    A convenience initializer for a UIPanGestureRecognizer so that it","parent_name":"UIPanGestureRecognizer"},"Extensions/UIPinchGestureRecognizer.html#/s:So24UIPinchGestureRecognizerC8ClosuresEAByABc7handler_tcfc":{"name":"init(handler:)","abstract":"

    A convenience initializer for a UIPinchGestureRecognizer so that it","parent_name":"UIPinchGestureRecognizer"},"Extensions/UILongPressGestureRecognizer.html#/s:So28UILongPressGestureRecognizerC8ClosuresEABSi12tapsRequired_Si07touchesG0Sd11minDuration12CoreGraphics7CGFloatV17allowableMovementyABc7handlertcfc":{"name":"init(tapsRequired:touchesRequired:minDuration:allowableMovement:handler:)","abstract":"

    A convenience initializer for a UILongPressGestureRecognizer so that it","parent_name":"UILongPressGestureRecognizer"},"Extensions/UITapGestureRecognizer.html#/s:So22UITapGestureRecognizerC8ClosuresEABSi12tapsRequired_Si07touchesF0yABc7handlertcfc":{"name":"init(tapsRequired:touchesRequired:handler:)","abstract":"

    A convenience initializer for a UITapGestureRecognizer so that it","parent_name":"UITapGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE11shouldBeginABXDSbyc7handler_tF":{"name":"shouldBegin(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizerShouldBegin(:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE33shouldRecognizeSimultaneouslyWithABXDSbABc7handler_tF":{"name":"shouldRecognizeSimultaneouslyWith(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldRecognizeSimultaneouslyWith:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE22shouldRequireFailureOfABXDSbABc7handler_tF":{"name":"shouldRequireFailureOf(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldRequireFailureOf:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE24shouldBeRequiredToFailByABXDSbABc7handler_tF":{"name":"shouldBeRequiredToFailBy(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldBeRequiredToFailBy:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE18shouldReceiveTouchABXDSbSo7UITouchCc7handler_tF":{"name":"shouldReceiveTouch(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldReceive:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/s:So19UIGestureRecognizerC8ClosuresE18shouldReceivePressABXDSbSo7UIPressCc7handler_tF":{"name":"shouldReceivePress(handler:)","abstract":"

    Equivalent to implementing UIGestureRecognizerDelegate’s gestureRecognizer(:shouldReceive:) method

    ","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html#/c:@CM@Closures@@objc(cs)UIGestureRecognizer(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIGestureRecognizer"},"Extensions/UIGestureRecognizer.html":{"name":"UIGestureRecognizer"},"Extensions/UITapGestureRecognizer.html":{"name":"UITapGestureRecognizer"},"Extensions/UILongPressGestureRecognizer.html":{"name":"UILongPressGestureRecognizer"},"Extensions/UIPinchGestureRecognizer.html":{"name":"UIPinchGestureRecognizer"},"Extensions/UIPanGestureRecognizer.html":{"name":"UIPanGestureRecognizer"},"Extensions/UISwipeGestureRecognizer.html":{"name":"UISwipeGestureRecognizer"},"Extensions/UIRotationGestureRecognizer.html":{"name":"UIRotationGestureRecognizer"},"Extensions/UIScreenEdgePanGestureRecognizer.html":{"name":"UIScreenEdgePanGestureRecognizer"},"Extensions/UIView.html":{"name":"UIView"},"Gesture Recognizers.html#/s:8Closures9configureyx7gesture_yxc7handlertSo19UIGestureRecognizerCRbzlF":{"name":"configure(gesture:handler:)","abstract":"

    This method is a convenience method to add a closure handler to a custom subclass of"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE9didScrollABXDyABc7handler_tF":{"name":"didScroll(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidScroll(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE7didZoomABXDyABc7handler_tF":{"name":"didZoom(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidZoom(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE17willBeginDraggingABXDyABc7handler_tF":{"name":"willBeginDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE15willEndDraggingABXDyAB_SC7CGPointVSpyAFGtc7handler_tF":{"name":"willEndDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillEndDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE14didEndDraggingABXDyAB_Sbtc7handler_tF":{"name":"didEndDragging(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndDragging(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE21willBeginDeceleratingABXDyABc7handler_tF":{"name":"willBeginDecelerating(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginDecelerating(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE18didEndDeceleratingABXDyABc7handler_tF":{"name":"didEndDecelerating(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndDecelerating(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE24didEndScrollingAnimationABXDyABc7handler_tF":{"name":"didEndScrollingAnimation(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndScrollingAnimation(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE16viewForZoomingInABXDSo6UIViewCSgABc7handler_tF":{"name":"viewForZoomingIn(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s viewForZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE16willBeginZoomingABXDyAB_So6UIViewCSgtc7handler_tF":{"name":"willBeginZooming(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewWillBeginZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE13didEndZoomingABXDyAB_So6UIViewCSg12CoreGraphics7CGFloatVtc7handler_tF":{"name":"didEndZooming(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidEndZooming(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE17shouldScrollToTopABXDSbABc7handler_tF":{"name":"shouldScrollToTop(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewShouldScrollToTop(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE14didScrollToTopABXDyABc7handler_tF":{"name":"didScrollToTop(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidScrollToTop(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/s:So12UIScrollViewC8ClosuresE29didChangeAdjustedContentInsetABXDyABc7handler_tF":{"name":"didChangeAdjustedContentInset(handler:)","abstract":"

    Equivalent to implementing UIScrollView’s scrollViewDidChangeAdjustedContentInset(_:) method

    ","parent_name":"UIScrollView"},"Extensions/UIScrollView.html#/c:@CM@Closures@@objc(cs)UIScrollView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UIScrollView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE10addStringsABXDSaySSG_ySS_S2itc9didSelecttF":{"name":"addStrings(_:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11addElementsABXDSayxG_SSx_S2itc8rowTitleyx_S2itc9didSelecttlF":{"name":"addElements(_:rowTitle:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11addElementsABXDSayxG_So6UIViewCx_AGSgS2itc03rowB0yx_S2itc9didSelecttlF":{"name":"addElements(_:rowView:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySaySSGG_ySS_S2itc9didSelecttF":{"name":"addComponents(_:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySayxGG_SSx_S2itc8rowTitleyx_S2itc9didSelecttlF":{"name":"addComponents(_:rowTitle:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE13addComponentsABXDSaySayxGG_So6UIViewCx_AHSgS2itc03rowB0yx_S2itc9didSelecttlF":{"name":"addComponents(_:rowView:didSelect:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE21rowHeightForComponentABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"rowHeightForComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:rowHeightForComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE17widthForComponentABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"widthForComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:widthForComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE11titleForRowABXDSSSgSi_Sitc7handler_tF":{"name":"titleForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:titleForRow:forComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE21attributedTitleForRowABXDSo18NSAttributedStringCSgSi_Sitc7handler_tF":{"name":"attributedTitleForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:attributedTitleForRow:forComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE10viewForRowABXDSo6UIViewCSi_SiAFSgtc7handler_tF":{"name":"viewForRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:viewForRow:forComponent:reusing:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE12didSelectRowABXDySi_Sitc7handler_tF":{"name":"didSelectRow(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDelegate’s pickerView(_:didSelectRow:inComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE18numberOfComponentsABXDSiyc7handler_tF":{"name":"numberOfComponents(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDataSource’s numberOfComponents(in:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/s:So12UIPickerViewC8ClosuresE23numberOfRowsInComponentABXDS2ic7handler_tF":{"name":"numberOfRowsInComponent(handler:)","abstract":"

    Equivalent to implementing UIPickerViewDataSource’s pickerView(_:numberOfRowsInComponent:) method

    ","parent_name":"UIPickerView"},"Extensions/UIPickerView.html#/c:@CM@Closures@@objc(cs)UIPickerView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UIPickerView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE15addFlowElementsABXDSayxG_q_m4cellSSSg0G7NibNameyx_q_zSitc4itemtSo0aB4CellCRb_r0_lF":{"name":"addFlowElements(_:cell:cellNibName:item:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE21shouldHighlightItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldHighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldHighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18didHighlightItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didHighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didHighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE20didUnhighlightItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didUnhighlightItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didUnhighlightItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18shouldSelectItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldSelectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldSelectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE20shouldDeselectItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldDeselectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldDeselectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE15didSelectItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didSelectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didSelectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE17didDeselectItemAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didDeselectItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didDeselectItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE11willDisplayABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplay(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:willDisplay:forItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE024willDisplaySupplementaryB0ABXDySS_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplaySupplementaryView(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:willDisplaySupplementaryView:forElementKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16didEndDisplayingABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplaying(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didEndDisplaying:forItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE029didEndDisplayingSupplementaryB0ABXDySS_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplayingSupplementaryView(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didEndDisplayingSupplementaryView:forElementOfKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE23shouldShowMenuForItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldShowMenuForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldShowMenuForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16canPerformActionABXDSb10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"canPerformAction(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:canPerformAction:forItemAt:withSender:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13performActionABXDy10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"performAction(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:performAction:forItemAt:withSender:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE022transitionLayoutForOldE0ABXDSo0ab10TransitionE0CSo0abE0C_AHtc7handler_tF":{"name":"transitionLayoutForOldLayout(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:transitionLayoutForOldLayout:newLayout:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE14canFocusItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canFocusItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:canFocusItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE19shouldUpdateFocusInABXDSbSo0abfE7ContextCc7handler_tF":{"name":"shouldUpdateFocusIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldUpdateFocusIn:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE16didUpdateFocusInABXDySo0abfE7ContextC_So27UIFocusAnimationCoordinatorCtc7handler_tF":{"name":"didUpdateFocusIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:didUpdateFocusIn:with:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE028indexPathForPreferredFocusedB2InABXD10Foundation05IndexE0VSgyc7handler_tF":{"name":"indexPathForPreferredFocusedViewIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s indexPathForPreferredFocusedVies(in:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE32targetIndexPathForMoveFromItemAtABXD10Foundation0eF0VAG_AGtc7handler_tF":{"name":"targetIndexPathForMoveFromItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:targetIndexPathForMoveFromItemAt:toProposedIndexPath:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE030targetContentOffsetForProposedeF0ABXDSC7CGPointVAFc7handler_tF":{"name":"targetContentOffsetForProposedContentOffset(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:targetContentOffsetForProposedContentOffset:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22shouldSpringLoadItemAtABXDSb10Foundation9IndexPathV_So32UISpringLoadedInteractionContext_ptc7handler_tF":{"name":"shouldSpringLoadItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegate’s collectionView(_:shouldSpringLoadItemAt:with:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22numberOfItemsInSectionABXDS2ic7handler_tF":{"name":"numberOfItemsInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:numberOfItemsInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13cellForItemAtABXDSo0aB4CellC10Foundation9IndexPathVc7handler_tF":{"name":"cellForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:cellForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE18numberOfSectionsInABXDSiyc7handler_tF":{"name":"numberOfSectionsIn(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s numberOfSections(in:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE33viewForSupplementaryElementOfKindABXDSo0a8ReusableB0CSS_10Foundation9IndexPathVtc7handler_tF":{"name":"viewForSupplementaryElementOfKind(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:viewForSupplementaryElementOfKind:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13canMoveItemAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canMoveItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:canMoveItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE10moveItemAtABXDy10Foundation9IndexPathV_AGtc7handler_tF":{"name":"moveItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:moveItemAt:to:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE14indexTitlesForABXDSaySSGyc7handler_tF":{"name":"indexTitlesFor(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s indexTitles(for:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE22indexPathForIndexTitleABXD10Foundation0gE0VSS_Sitc7handler_tF":{"name":"indexPathForIndexTitle(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDataSource’s collectionView(_:indexPathForIndexTitle:at:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE13sizeForItemAtABXDSC6CGSizeV10Foundation9IndexPathVc7handler_tF":{"name":"sizeForItemAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:sizeForItemAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE17insetForSectionAtABXDSC12UIEdgeInsetsVSic7handler_tF":{"name":"insetForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionV(_:layout:insetForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE30minimumLineSpacingForSectionAtABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"minimumLineSpacingForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:minimumLineSpacingForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE35minimumInteritemSpacingForSectionAtABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"minimumInteritemSpacingForSectionAt(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:minimumInteritemSpacingForSectionAt:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE31referenceSizeForHeaderInSectionABXDSC6CGSizeVSic7handler_tF":{"name":"referenceSizeForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:referenceSizeForHeaderInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/s:So16UICollectionViewC8ClosuresE31referenceSizeForFooterInSectionABXDSC6CGSizeVSic7handler_tF":{"name":"referenceSizeForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UICollectionViewDelegateFlowLayout’s collectionView(_:layout:referenceSizeForFooterInSection:) method

    ","parent_name":"UICollectionView"},"Extensions/UICollectionView.html#/c:@CM@Closures@@objc(cs)UICollectionView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UICollectionView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addElementsABXDSayxG_q_m4cellSSSg0F7NibNameyx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addElements(_:cell:cellNibName:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addSectionsABXDSaySayxGG_q_m4cellSSSg0F7NibNameSo6UIViewCAE_Sitc06headerB0yx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addSections(_:cell:cellNibName:headerView:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11addSectionsABXDSaySayxGG_q_m4cellSSSg0F7NibNameSSAE_SitcSg11headerTitleyx_q_zSitc3rowtSo0aB4CellCRb_r0_lF":{"name":"addSections(_:cell:cellNibName:headerTitle:row:)","abstract":"

    This method defaults many of the boilerplate callbacks needed to populate a","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE11willDisplayABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"willDisplay(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplay:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE017willDisplayHeaderB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"willDisplayHeaderView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplayHeaderView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE017willDisplayFooterB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"willDisplayFooterView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDisplayFooterView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16didEndDisplayingABXDySo0aB4CellC_10Foundation9IndexPathVtc7handler_tF":{"name":"didEndDisplaying(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplaying:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE022didEndDisplayingHeaderB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"didEndDisplayingHeaderView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplayingHeaderView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE022didEndDisplayingFooterB0ABXDySo6UIViewC_Sitc7handler_tF":{"name":"didEndDisplayingFooterView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndDisplayingFooterView:forSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14heightForRowAtABXD12CoreGraphics7CGFloatV10Foundation9IndexPathVc7handler_tF":{"name":"heightForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24heightForHeaderInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"heightForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24heightForFooterInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"heightForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:heightForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23estimatedHeightForRowAtABXD12CoreGraphics7CGFloatV10Foundation9IndexPathVc7handler_tF":{"name":"estimatedHeightForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE33estimatedHeightForHeaderInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"estimatedHeightForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE33estimatedHeightForFooterInSectionABXD12CoreGraphics7CGFloatVSic7handler_tF":{"name":"estimatedHeightForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:estimatedHeightForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22viewForHeaderInSectionABXDSo6UIViewCSgSic7handler_tF":{"name":"viewForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:viewForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22viewForFooterInSectionABXDSo6UIViewCSgSic7handler_tF":{"name":"viewForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:viewForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE31accessoryButtonTappedForRowWithABXDy10Foundation9IndexPathVc7handler_tF":{"name":"accessoryButtonTappedForRowWith(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:accessoryButtonTappedForRowWith:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE20shouldHighlightRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldHighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldHighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17didHighlightRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didHighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didHighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE19didUnhighlightRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didUnhighlightRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didUnhighlightRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE15willSelectRowAtABXD10Foundation9IndexPathVSgAGc7handler_tF":{"name":"willSelectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willSelectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17willDeselectRowAtABXD10Foundation9IndexPathVSgAGc7handler_tF":{"name":"willDeselectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willDeselectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14didSelectRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didSelectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didSelectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16didDeselectRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"didDeselectRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didDeselectRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE20editingStyleForRowAtABXDSC0ab11CellEditingE0O10Foundation9IndexPathVc7handler_tF":{"name":"editingStyleForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:editingStyleForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE032titleForDeleteConfirmationButtonE5RowAtABXDSSSg10Foundation9IndexPathVc7handler_tF":{"name":"titleForDeleteConfirmationButtonForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:titleForDeleteConfirmationButtonForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE19editActionsForRowAtABXDSaySo0abG6ActionCGSg10Foundation9IndexPathVc7handler_tF":{"name":"editActionsForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:editActionsForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE29shouldIndentWhileEditingRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldIndentWhileEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldIndentWhileEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE21willBeginEditingRowAtABXDy10Foundation9IndexPathVc7handler_tF":{"name":"willBeginEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:willBeginEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18didEndEditingRowAtABXDy10Foundation9IndexPathVSgc7handler_tF":{"name":"didEndEditingRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didEndEditingRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE31targetIndexPathForMoveFromRowAtABXD10Foundation0eF0VAG_AGtc7handler_tF":{"name":"targetIndexPathForMoveFromRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:targetIndexPathForMoveFromRowAt:toProposedIndexPath:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE24indentationLevelForRowAtABXDSi10Foundation9IndexPathVc7handler_tF":{"name":"indentationLevelForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:indentationLevelForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE22shouldShowMenuForRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"shouldShowMenuForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldShowMenuForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE16canPerformActionABXDSb10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"canPerformAction(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:canPerformAction:forRowAt:withSender:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE13performActionABXDy10ObjectiveC8SelectorV_10Foundation9IndexPathVypSgtc7handler_tF":{"name":"performAction(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:performAction:forRowAt:withSender:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE13canFocusRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canFocusRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:canFocusRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE17shouldUpdateFocusABXDSbSo0abfE7ContextCc7handler_tF":{"name":"shouldUpdateFocus(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldUpdateFocusIn:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE14didUpdateFocusABXDySo0abfE7ContextC_So27UIFocusAnimationCoordinatorCtc7handler_tF":{"name":"didUpdateFocus(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:didUpdateFocusIn:with:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE028indexPathForPreferredFocusedB0ABXD10Foundation05IndexE0VSgyc7handler_tF":{"name":"indexPathForPreferredFocusedView(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s indexPathForPreferredFocusedView(in:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12numberOfRowsABXDS2ic7handler_tF":{"name":"numberOfRows(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:numberOfRowsInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE10cellForRowABXDSo0aB4CellC10Foundation9IndexPathVc7handler_tF":{"name":"cellForRow(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:cellForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18numberOfSectionsInABXDSiyc7handler_tF":{"name":"numberOfSectionsIn(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s numberOfSections(in:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23titleForHeaderInSectionABXDSSSgSic7handler_tF":{"name":"titleForHeaderInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:titleForHeaderInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE23titleForFooterInSectionABXDSSSgSic7handler_tF":{"name":"titleForFooterInSection(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:titleForFooterInSection:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12canEditRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canEditRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:canEditRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE12canMoveRowAtABXDSb10Foundation9IndexPathVc7handler_tF":{"name":"canMoveRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:canMoveRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE18sectionIndexTitlesABXDSaySSGSgyc7handler_tF":{"name":"sectionIndexTitles(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s sectionIndexTitles(for:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE27sectionForSectionIndexTitleABXDSiSS_Sitc7handler_tF":{"name":"sectionForSectionIndexTitle(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:sectionForSectionIndexTitle:at:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE6commitABXDySC0aB16CellEditingStyleO_10Foundation9IndexPathVtc7handler_tF":{"name":"commit(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:commit:forRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE9moveRowAtABXDy10Foundation9IndexPathV_AGtc7handler_tF":{"name":"moveRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDataSource’s tableView(_:moveRowAt:to:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE40leadingSwipeActionsConfigurationForRowAtABXDSo07UISwipefG0CSg10Foundation9IndexPathVc7handler_tF":{"name":"leadingSwipeActionsConfigurationForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:leadingSwipeActionsConfigurationForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE41trailingSwipeActionsConfigurationForRowAtABXDSo07UISwipefG0CSg10Foundation9IndexPathVc7handler_tF":{"name":"trailingSwipeActionsConfigurationForRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:trailingSwipeActionsConfigurationForRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/s:So11UITableViewC8ClosuresE21shouldSpringLoadRowAtABXDSb10Foundation9IndexPathV_So32UISpringLoadedInteractionContext_ptc7handler_tF":{"name":"shouldSpringLoadRowAt(handler:)","abstract":"

    Equivalent to implementing UITableViewDelegate’s tableView(_:shouldSpringLoadRowAt:) method

    ","parent_name":"UITableView"},"Extensions/UITableView.html#/c:@CM@Closures@@objc(cs)UITableView(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate/dataSource closures that were assigned to this","parent_name":"UITableView"},"Extensions/UITableView.html":{"name":"UITableView"},"Extensions/UICollectionView.html":{"name":"UICollectionView"},"Extensions/UIPickerView.html":{"name":"UIPickerView"},"Extensions/UIScrollView.html":{"name":"UIScrollView"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresEABSo7UIImageCSg5image_SC0abC5StyleO5styleyyc7handlertcfc":{"name":"init(image:style:handler:)","abstract":"

    A convenience initializer for a UIBarButtonItem so that the tap event can","parent_name":"UIBarButtonItem"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresEABSo7UIImageCSg5image_AF19landscapeImagePhoneSC0abC5StyleO5styleyyc7handlertcfc":{"name":"init(image:landscapeImagePhone:style:handler:)","abstract":"

    A convenience initializer for a UIBarButtonItem so that the tap event can","parent_name":"UIBarButtonItem"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresEABSSSg5title_SC0abC5StyleO5styleyyc7handlertcfc":{"name":"init(title:style:handler:)","abstract":"

    A convenience initializer for a UIBarButtonItem so that the tap event can","parent_name":"UIBarButtonItem"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresEABSC0ab6SystemC0O03barbeC0_yyc7handlertcfc":{"name":"init(barButtonSystemItem:handler:)","abstract":"

    A convenience initializer for a UIBarButtonItem so that the tap event can","parent_name":"UIBarButtonItem"},"Extensions/UIBarButtonItem.html#/s:So15UIBarButtonItemC8ClosuresE5onTapyyyc7handler_tF":{"name":"onTap(handler:)","abstract":"

    This method is a convenience method to add a closure handler to a UIBarButtonItem.","parent_name":"UIBarButtonItem"},"Extensions/UIControl.html#/s:So9UIControlC8ClosuresE2onABXDSC0A6EventsV_yAB_So7UIEventCSgtc7handlertF":{"name":"on(_:handler:)","abstract":"

    Provide a handler that will be called for UIControlEvents option passed in.

    ","parent_name":"UIControl"},"Extensions/UISlider.html#/s:So8UISliderC8ClosuresE8onChangeABXDySfc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISlider"},"Extensions/UIStepper.html#/s:So9UIStepperC8ClosuresE8onChangeABXDySdc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIStepper"},"Extensions/UISegmentedControl.html#/s:So18UISegmentedControlC8ClosuresE8onChangeABXDySic7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISegmentedControl"},"Extensions/UIPageControl.html#/s:So13UIPageControlC8ClosuresE8onChangeABXDySic7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIPageControl"},"Extensions/UIDatePicker.html#/s:So12UIDatePickerC8ClosuresE8onChangeABXDy10Foundation4DateVc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UIDatePicker"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE8onChangeABXDySSc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping a typical use for UITextField’s","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE14onEditingEndedABXDyyc7handler_tF":{"name":"onEditingEnded(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidEnd for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE14onEditingBeganABXDyyc7handler_tF":{"name":"onEditingBegan(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidBegin for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE8onReturnABXDyyc7handler_tF":{"name":"onReturn(handler:)","abstract":"

    A convenience method to respond to UIControlEvents.editingDidEndOnExit for a UITextField.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE18shouldBeginEditingABXDSbyc7handler_tF":{"name":"shouldBeginEditing(handler:)","abstract":"

    This method determines if the text field should begin editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE15didBeginEditingABXDyyc7handler_tF":{"name":"didBeginEditing(handler:)","abstract":"

    This method determines if the text field did begin editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE16shouldEndEditingABXDSbyc7handler_tF":{"name":"shouldEndEditing(handler:)","abstract":"

    This method determines if the text field should end editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE13didEndEditingABXDyyc7handler_tF":{"name":"didEndEditing(handler:)","abstract":"

    This method determines if the text field did end editing. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE22shouldChangeCharactersABXDSbSC8_NSRangeV_SStc7handler_tF":{"name":"shouldChangeCharacters(handler:)","abstract":"

    This method determines if the text field should change its characters based on user input.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE18shouldChangeStringABXDSbSS_SStc7handler_tF":{"name":"shouldChangeString(handler:)","abstract":"

    This method determines if the text field should change its text based on user input.","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE11shouldClearABXDSbyc7handler_tF":{"name":"shouldClear(handler:)","abstract":"

    This method determines if the text field should remove its text. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/s:So11UITextFieldC8ClosuresE12shouldReturnABXDSbyc7handler_tF":{"name":"shouldReturn(handler:)","abstract":"

    This method determines if the text field should process the return button. This is equivalent","parent_name":"UITextField"},"Extensions/UITextField.html#/c:@CM@Closures@@objc(cs)UITextField(im)clearClosureDelegates":{"name":"clearClosureDelegates()","abstract":"

    Clears any delegate closures that were assigned to this","parent_name":"UITextField"},"Extensions/UISwitch.html#/s:So8UISwitchC8ClosuresE8onChangeABXDySbc7handler_tF":{"name":"onChange(handler:)","abstract":"

    A convenience method wrapping the .onValueChanged event","parent_name":"UISwitch"},"Extensions/UIButton.html#/s:So8UIButtonC8ClosuresE5onTapABXDyyc7handler_tF":{"name":"onTap(handler:)","abstract":"

    A convenience method wrapping a typical use for UIButton’s","parent_name":"UIButton"},"Extensions/UIButton.html":{"name":"UIButton"},"Extensions/UISwitch.html":{"name":"UISwitch"},"Extensions/UITextField.html":{"name":"UITextField"},"Extensions/UIDatePicker.html":{"name":"UIDatePicker"},"Extensions/UIPageControl.html":{"name":"UIPageControl"},"Extensions/UISegmentedControl.html":{"name":"UISegmentedControl"},"Extensions/UIStepper.html":{"name":"UIStepper"},"Extensions/UISlider.html":{"name":"UISlider"},"Extensions/UIControl.html":{"name":"UIControl"},"Extensions/UIBarButtonItem.html":{"name":"UIBarButtonItem"},"Controls.html":{"name":"Controls"},"Scrolling Views.html":{"name":"Scrolling Views"},"Gesture Recognizers.html":{"name":"Gesture Recognizers"},"Controllers.html":{"name":"Controllers"},"KVO.html":{"name":"KVO"}} \ No newline at end of file