FUINoteCollectionViewCell
@IBDesignable
open class FUINoteCollectionViewCell : FUIInlineValidationDrawingCollectionViewCell<FUINoteFormCellContentView>
The reusable UI component implemented as a UICollectionViewCell to allow users to enter notes.

The cell height is automatically adjusted to allow all of the content to be displayed. However, the cell height is also limited to the height of the screen above the soft keyboard height.
Usage
The following is an example of usage in an application with UIViewController and UICollectionViewDataSource:
override func viewDidLoad() {
super.viewDidLoad()
self.collectionView.register(FUINoteCollectionViewCell.self, forCellReuseIdentifier: FUINoteCollectionViewCell.reuseIdentifier)
}
override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UITableViewCell {
let cell = self.collectionView.dequeueReusableCell(withReuseIdentifier: FUINoteCollectionViewCell.reuseIdentifier, for: indexPath) as! FUINoteCollectionViewCell
cell.onChangeHandler = { [unowned self] newValue in
self.noteText = newValue
}
cell.placeholder.text = "Enter Description"
cell.value = noteText
cell.isTrackingLiveChanges = true
return cell
}
Theming
Supported TEXT class paths:
fdlFUINoteFormCell_valueText {}
fdlFUINoteFormCell_placeholder {}
Supported TEXT properties:
font-color: Color;
font-style: UIFontTextStyle;
Supported TINTABLE class paths:
fdlFUIKeyValueFormCell_valueText {}
Supported TINTABLE properties:
tint-color { -disabled }: Color;
font-style { -disabled }: UIFontTextStyle;
-
Indicates whether the note text can be modified or not. The default is
true.Declaration
Swift
public var isEditable: Bool { get set } -
If
isTrackingLiveChangesis true, thenonChangeHandlerwill be invoked for every letter entered.Otherwise,
onChangeHandlerwill be invoked only after the user taps the Done key, or the field resigns as first responder.The default is
false.Declaration
Swift
public var isTrackingLiveChanges: Bool { get set } -
If this is true, this
FUINoteFormCellwill grow in height and the cell will not be scrollable. Otherwise, the cell height will be fixed.Declaration
Swift
@available(*, deprecated, message: "This property is deprecated. Please use the 'maxNumberOfLines' property.") public var isAutoFitting: Bool { get set } -
The minimum number of lines in this
FUINoteFormCell.The cell height will be set to display the text with this number of lines. The default value is 1. Setting this value to less than or equal to zero is ignored. This property is ignored when the height of the cell is fixed.
Declaration
Swift
public var minNumberOfLines: Int { get set } -
The maximum number of lines in this
FUINoteFormCell.The cell height can grow to display the text with this number of lines. This property is ignored when the height of the cell is fixed. The view will be scrollable when the text entered requires more lines to be displayed. The default is 0, which means no limit.
Note that more text may be displayed in the view due to extra top and buttom margins of the text view in the cell.
Declaration
Swift
public var maxNumberOfLines: Int { get set } -
This is the maximum length of the note text, if
maxNoteTextLengthis greater than 0.If the text length reaches this limit when
isCharCountEnabledisfalse, the user cannot enter more text. Note: If the user pastes a string and the length plus the current text length is greater than the limit, the insert is rejected. Partial strings are not accepted in the text field.If the text length reaches this limit when
isCharCountEnabledistrue, the user cannot enter more text ifallowsBeyondLimitisfalse. In the case whereallowsBeyondLimitistrue, the user can enter more text beyond the limitation in the error state.The default value for
maxNoteTextLengthis 0, which means no limit.Declaration
Swift
public var maxNoteTextLength: Int { get set } -
The UI component that holds the note text.
Declaration
Swift
public var valueTextView: FUITextView { get } -
The placeholder string to be put on the text area before the user has typed anything.
Declaration
Swift
@available(*, deprecated, message: "This property is deprecated. Please use `placeholder.text`.") @IBInspectable public var placeholderText: String? { get set }
-
The hint text.
Declaration
Swift
open var hintText: String? { get set } -
Indicates if the cell is read-only or not.
The default is
false.Declaration
Swift
open var isReadOnly: Bool { get set } -
Indicates whether to hide the read-only hint or not.
A default hint is provided when this cell’s
isReadOnlyistrueunless this property istrue. The default isfalse, meaning that the default read-only hint will be shown whenisReadOnlyistrue.Declaration
Swift
open var hidesReadOnlyHint: Bool { get set }
-
Declaration
Swift
override open func systemLayoutSizeFitting(_ targetSize: CGSize, withHorizontalFittingPriority horizontalFittingPriority: UILayoutPriority, verticalFittingPriority: UILayoutPriority) -> CGSize