CFUserNotificationReceiveResponse(_:_:_:)
Waits for the user to respond to a notification or for the notification to time out.
Declaration
func CFUserNotificationReceiveResponse(_ userNotification: CFUserNotification!, _ timeout: CFTimeInterval, _ responseFlags: UnsafeMutablePointer<CFOptionFlags>!) -> Int32Parameters
- userNotification:
The user notification to use.
- timeout:
The amount of time to wait for the user to respond to
userNotificationor for the notification to time out. If neither happens beforetimeoutpasses, this function returns a non-0value. Iftimeoutis0, the function blocks until the user notification is dismissed. - responseFlags:
On return, contains flags identifying how the notification was dismissed, the state of any checkboxes, and the selected element of the pop-up menu. Bits 0-1 of the value hold an identifier for the button pressed by the user (see 1534504 Response Codes). Extract the identifier by performing a bitwise-AND operation with
0x3. Bits 8-15 ofresponseFlagshold the state of up to 8 checkboxes or radio buttons, if present. Extract the flags by performing bitwise-AND operations with the return value of Cfusernotificationcheckboxchecked(_:). Bits 24-31 hold the index number of the element selected in a pop-up menu, if present. Extract the index by performing a 24-bit right shift:responseFlags >> 24.
Return Value
0 if the call successfully received a response; a non-0 value otherwise.
Discussion
Use this function to poll a user notification for a user response. You can call it any number of times on the same user notification.
To avoid polling and blocking your thread’s execution, you can create a run loop source for the user notification with CFUserNotificationCreateRunLoopSource(_:_:_:_:). You will then receive a callback when the dialog is dismissed.
See Also
CFUserNotification Miscellaneous Functions
CFUserNotificationCancel(_:)CFUserNotificationCheckBoxChecked(_:)CFUserNotificationCreate(_:_:_:_:_:)CFUserNotificationCreateRunLoopSource(_:_:_:_:)CFUserNotificationDisplayAlert(_:_:_:_:_:_:_:_:_:_:_:)CFUserNotificationDisplayNotice(_:_:_:_:_:_:_:_:)CFUserNotificationGetResponseDictionary(_:)CFUserNotificationGetResponseValue(_:_:_:)CFUserNotificationGetTypeID()CFUserNotificationPopUpSelection(_:)CFUserNotificationSecureTextField(_:)CFUserNotificationUpdate(_:_:_:_:)