Protocols
The following protocols are available globally.
-
See moreRSDSoundPlayer
is a protocol for playing sounds intended to give the user UI feedback during the running of a task.Declaration
Swift
public protocol RSDSoundPlayer
-
See moreRSDVoiceBox
is used byRSDStepViewController
tospeak
text strings.Declaration
Swift
public protocol RSDVoiceBox
-
As of this writing, there is no simple way for an application to allow selectively locking the orientation of the app to portrait, while still allowing some view controllers to require landscape. This is intended as a work-around for that limitation. Using this feature requires the view controller that needs to change the orientation to set the
orientationLock
inviewWillAppear
and then clear the lock onviewDidAppear
. syoung 08/15/2019Seealso
RSDAppDelegate
for an example implementation.Declaration
Swift
public protocol RSDAppOrientationLock : UIApplicationDelegate
-
See moreRSDCancelActionController
is a shared protocol that can be used to present a consistent response to a cancel action (button tap) where the implementation of the step view controller is not shared.Declaration
Swift
public protocol RSDCancelActionController : RSDStepController, RSDAlertPresenter
-
See moreRSDPageViewControllerProtocol
allows replacing theUIPageViewController
in the base class with a different view controller implementation. It is assumed that the implementation is for a view controller appropriate to the current device.Declaration
Swift
public protocol RSDPageViewControllerProtocol
-
See moreRSDOptionalTaskViewControllerDelegate
is a delegate protocol defined as@objc
to allow the methods to be optionally implemented. As such, these methods cannot take Swift protocols as their paramenters.Declaration
Swift
@objc public protocol RSDOptionalTaskViewControllerDelegate : AnyObject, NSObjectProtocol
-
RSDTaskViewControllerDelegate
is an extension of theRSDTaskControllerDelegate
protocol that also implements optional methods defined byRSDOptionalTaskViewControllerDelegate
.Declaration
Swift
public protocol RSDTaskViewControllerDelegate : RSDTaskControllerDelegate, RSDOptionalTaskViewControllerDelegate
-
Optional protocol that can be used to get the step view controller from the step rather than from the task view controller or delegate.
See moreDeclaration
Swift
public protocol RSDStepViewControllerVendor : RSDStep
-
RSDTableStepLayoutConstants
defines the layout constants used by theRSDTableStepViewController
.Declaration
Swift
public protocol RSDTableStepLayoutConstants
-
Utility for presenting alerts
See moreDeclaration
Swift
@objc public protocol RSDAlertPresenter : NSObjectProtocol
-
For the case where the learn more action is designed specifically for showing a view controller, this allows for vending a custom learn more action without requiring a custom step view.
See moreDeclaration
Swift
public protocol RSDShowViewUIAction : RSDUIAction
-
A protocol for setting up a delegate for the button cell.
See moreDeclaration
Swift
public protocol RSDButtonCellDelegate : AnyObject
-
Constants used by the button cell to set up standard constraints.
Declaration
Swift
public protocol RSDButtonCellLayoutConstants
-
See moreRSDLoadingViewControllerProtocol
is a convenience protocol to allow UIViewControllers that do not inherit from the same subclass to show and hide a loading indicator.Declaration
Swift
public protocol RSDLoadingViewControllerProtocol
-
See moreRSDPickerViewProtocol
is a protocol for an input view that can be used to pick an answer.Declaration
Swift
@objc public protocol RSDPickerViewProtocol : AnyObject, NSObjectProtocol
-
RSDPickerObserver
is an observer of changes to the picker.Declaration
Swift
@objc public protocol RSDPickerObserver : AnyObject, NSObjectProtocol
-
A protocol that UIView subclasses can use to standardize the color of their view properties.
See moreDeclaration
Swift
public protocol RSDViewDesignable : AnyObject
-
Constants used by the navigation view header to set up standard constraints.
Declaration
Swift
public protocol RSDNavigationHeaderLayoutConstants
-
Constants used by the navigation view footer to set up standard constraints.
Declaration
Swift
public protocol RSDNavigationFooterLayoutConstants
-
RSDStepTextFieldCellLayoutConstants
defines the layout constants used by aRSDStepTextFieldCell
.Declaration
Swift
public protocol RSDStepTextFieldCellLayoutConstants
-
RSDStepTextViewCellLayoutConstants
defines the layout constants used by aRSDStepTextViewCell
.Declaration
Swift
public protocol RSDStepTextViewCellLayoutConstants
-
RSDStepTextInputView
defines custom properties associated with a ‘UITextView’ or ‘UITextField’ and provides read only access to other common properties.Declaration
Swift
public protocol RSDStepTextInputView : AnyObject