FUIPrivacyNoticeViewController
@MainActor
open class FUIPrivacyNoticeViewController<AuthorizationStatus> : FUIBaseDrawingViewController<FUIPrivacyNoticeView>, CLLocationManagerDelegate
This UIViewController is used to display a permissions screen to the application for onboarding. The controller mainly shows the user the reason for requesting permission.
Example:
let controller = FUIPrivacyNoticeViewController()
controller.titleText.text = ""
controller.subtitle.text = ""
controller.detailImageView.image = UIImage()
// didSelectHandler
controller.primaryAction?.didSelectHandler = { button in ... }
The FUIPrivacyNoticeItem is a struct type that provides five default types:
location: Location permissionsnotification: Notifications permissionsphoto: Photos permissionscalendar: Calendar permissionscamera: Camera permissions
Usage:
let controller = FUIPrivacyNoticeViewController.makeViewController(for: .location) { [weak self] (status: CLAuthorizationStatus) in
guard let self = self else { return }
...
}
Theming: Supported style classes
fdlFUIPrivacyNoticeView
fdlFUIPrivacyNoticeView_imageView
fdlFUIPrivacyNoticeView_titleView
fdlFUIPrivacyNoticeView_subtitleView
fdlFUIPrivacyNoticeView_primaryAction
fdlFUIPrivacyNoticeView_secondaryAction
-
Title text to display. (It is not set to
UIViewController.title.)Declaration
Swift
@MainActor public var titleText: FUIMultiLineText { get } -
Developer-formatted
NSAttributedStringto display as the subtitle. This overridestitlevalue and the default styling.Declaration
Swift
@MainActor public var titleAttributedText: NSAttributedString! { get set } -
NUIStyleClassPath for
titlepropertyDeclaration
Swift
@MainActor public var titleStyleClassPath: [FioriStyle] { get set } -
Subtitle text to display
Declaration
Swift
@MainActor public var subtitle: FUIMultiLineText { get } -
Developer-formatted
NSAttributedStringto display as the subtitle. This overrides thesubtitlevalue, and the default styling.Declaration
Swift
@MainActor public var subtitleAttributedText: NSAttributedString! { get set } -
NUIStyleClassPath for
subtitlepropertyDeclaration
Swift
@MainActor public var subtitleStyleClassPath: [FioriStyle] { get set } -
Undocumented
Declaration
Swift
@MainActor public var detailImageView: FUIImageView { get } -
Declaration
Swift
@MainActor public var primaryAction: FUIButton { get } -
Secondary button for the view.
Declaration
Swift
@MainActor public var secondaryAction: FUIButton { get } -
Undocumented
Declaration
Swift
public typealias FUIAuthorizationStatusChangeHandler = (AuthorizationStatus) -> Void -
Authorization status callback
Declaration
Swift
@MainActor public var authorizationStatusChangeHandler: FUIAuthorizationStatusChangeHandler? -
Undocumented
Declaration
Swift
@MainActor open override func viewDidLoad() -
Undocumented
Declaration
Swift
@MainActor public func locationManagerDidChangeAuthorization(_ manager: CLLocationManager) -
A class method.
The
FUIPrivacyNoticeItemis a struct type that provides five default types:location: Location permissionsnotification: Notifications permissionsphoto: Photos permissionscalendar: Calendar permissionscamera: Camera permissions
Parameters:
type: a struct type
Usage:
let controller = FUIPrivacyNoticeViewController<CLAuthorizationStatus>.makeViewController(for: .Location) controller.authorizationStatusChangeHandler = { [weak self] status in guard let self = self else { return } ... }Declaration
Swift
@MainActor public static func makeViewController(for type: FUIPrivacyNoticeItem) -> FUIPrivacyNoticeViewController