FUIListPicker
@objc
public protocol FUIListPicker
The protocol defines the properties and functions for listing the options
in an UITableView
for the corresponding ListPickerFormCell
.
-
The prompt string to be displayed on the footer of the list table view. If this is nil, there will be no table view footer.
Declaration
Swift
var prompt: String? { get set }
-
This property indicates if search bar is to be displayed in the ListPicker. The default is false.
Declaration
Swift
var isSearchEnabled: Bool { get set }
-
If this property is true, after user taps an item in search mode, the search will be canceled with the selection state changed for that item.
Declaration
Swift
var isSearchCancelledAfterSelection: Bool { get set }
-
If this property is true, the navigation bar will be hidden when search is active. Otherwise, the navigation bar will remain when search is active. The default is true.
Declaration
Swift
var hidesNavigationBarDuringSearch: Bool { get set }
-
If this is set, the delegate object of the search bar associated with this
FUIListPicker
will be set to thisUISearchBarDelegate
implementation.The default is nil.
Declaration
Swift
var searchBarDelegate: UISearchBarDelegate? { get set }
-
The costom placeholder text on the search bar.
If this is not nil, the placeholder in the search bar will be set to this text. Otherwise, the standard
UISearchBar
placeholder will be used.Declaration
Swift
var searchBarPlaceholderText: String? { get set }
-
If this is true, there will be a barcode scanner icon at the bookmark location of the search bar to allow user use barcode scanner.
Declaration
Swift
var isBarcodeScannerEnabled: Bool { get set }
-
The
FUIBarcodeScanMode
for the barcode scanner.Declaration
Swift
var barcodeScanMode: FUIBarcodeScanMode { get set }
-
A closure to transform the scan result string. The transformed string will be used as the search text. If this property is nil, the result string from scanner will be used as the search text directly without transformation.
Declaration
Swift
var barcodeScanResultTransformer: ((String) -> String)? { get set }
-
The
ListPickerDataSource
implementation for the available options. If this is set, thevalueOptions
property of the associatedFUIListPickerFormCell
will be ignored. If this is not set by the developer, andvalueOptions
property of the associatedFUIListPickerFormCell
is set, aStringListPickerDataSource
will be created usingvalueOptions
and set to both properties ‘dataSource’ and ‘searchResultsUpdating’.Declaration
Swift
var dataSource: FUIListPickerDataSource? { get set }
-
Is the
ListPickerDataSource
implementation is unique identifier based or not.Declaration
Swift
var isDataSourceRequiringUniqueIdentifiers: Bool { get set }
-
The
ListPickerSearchResultsUpdating
implementation for handling search results. Please refer to thedataSource
property that ifdataSource
property is not set by the developer, andvalueOptions
property of the associatedFUIListPickerFormCell
is set, aStringListPickerDataSource
will be created usingvalueOptions
and set to both properties ‘dataSource’ and ‘searchResultsUpdating’.Declaration
Swift
var searchResultsUpdating: FUIListPickerSearchResultsUpdating? { get set }
-
The section header title for selected entries in long list. The default is from localized strings file - “Selected”.
Declaration
Swift
var selectedEntriesSectionTitle: String? { get set }
-
The section header title for all entries in long list. The default is from localized strings file - “All”.
Declaration
Swift
var allEntriesSectionTitle: String? { get set }
-
The title string for the “Select All” button. The default is from localized strings file - “Select All”.
Declaration
Swift
var selectAllButtonTitle: String? { get set }
-
The title string for the “Deselect All” button. The default is from localized strings file - “Deselect All”.
Declaration
Swift
var deselectAllButtonTitle: String? { get set }
-
The title of the list picker.
Declaration
Swift
var title: String? { get set }
-
Estimated height of UITableViewCells displayed in
FUIListPicker
table view. Should be used in same manner asUITableView.estimatedRowHeight
.Declaration
Swift
var estimatedRowHeight: CGFloat { get set }
-
This property indicates if the table should be sectioned. i.e., when the number of items in the list requires more than one screen to displayed all of them, there will be a “Selected” section, to display the selected items, and an “All” section to display all items. If
isSelectedSectionEnabled
is false, there will be only one section to display all items.The default value is true.
Declaration
Swift
var isSelectedSectionEnabled: Bool { get set }
-
The tint color to be applied to the cells in the list table view. This is used to set the color of the selection check mark.
Declaration
Swift
var tintColor: UIColor? { get set }
-
Register the
UITableViewCell
classes that will be used in displaying cells fromdataSource
. Note that the standardUITableViewCell
is by default registered using the identifier “UITableViewCell”.Declaration
Swift
func register(_ cellClass: AnyClass?, forCellReuseIdentifier identifier: String)
-
Reload the data in the selection list table view.
Declaration
Swift
func reloadData()