Activity Control¶
FUIActivityControl¶
open class FUIActivityControl: NibDesignable, FUIBackgroundSchemeSupporting
FUIActivityControl is a stand-alone component supporting user activities. By default, it supports phone, email, message, videoCall. FUIContactCell embed with a FUIActivityControl by default.
Code Usage¶
//You can create your own activity object if you want.
let myCustomActivity = FUIActivityItem(icon: UIImage(named: "asset"), identifier: "mycustomer.twilio")
let activities: [FUIActivityItem] = [FUIActivityItem.phone, FUIActivityItem.message, myCustomActivity]
//Create a FUIActivityControl object.
let activityControl = FUIActivityControl()
activityControl.addActivities(activities)
activityControl.delegate = self
//Optionally, set an item size (if nil, intrinsic size of image will be used)
activityControl.itemSize = CGSize(width: 44.0, height: 44.0)
//Optionally, set a limit to visible items (useful for hiding items in `.compact` horizontal mode)
activityControl.maxVisibleItems = 3
//Optionally, set the inter-item spacing (useful for showing more items in `.compact` horizontal mode)
activityControl.spacing = 10.0
//Implement this method in your class to handle action.
func activityControl(_ activityControl: FUIActivityControl, didSelectActivity activityItem: FUIActivityItem) {
switch activityItem {
case FUIActivityItem.phone:
//do something
case FUIActivityItem.message:
//do something
case myCustomActivity:
//do something
default:
break
}
}
Attention¶
The delegate object with type FUIActivityControlDelegate is declared as a weak reference. So on deallocation it will be automatically set to nil. To keep it alive as expected, developer should retain the delegate object during its whole execution scope.
Last update: April 14, 2021