         addSubview(picker)
     }
 
+    /// Returns an object initialized from data in a given unarchiver.
+    /// - parameter aDecoder: An unarchiver object.
     required public init?(coder aDecoder: NSCoder) {
         super.init(coder: aDecoder)
         picker.delegate = self

    /// updated by changes to `value`, `minIntegerDigits`, and `fractionDigits`.
    fileprivate(set) public var displayString: String = "0"

    override public var intrinsicContentSize: CGSize {
        return picker.bounds.size
    }


// MARK: - UIPickerViewDelegate
extension NumericPicker: UIPickerViewDelegate {

    /**
     Called by the picker view when it needs the title to use for a given row in a given component.
     
     - parameter pickerView: The picker view requesting the data.
     - parameter row: A zero-indexed number identifying a row of `component`. Rows are numbered top-to-bottom.
     - parameter component: A zero-indexed number identifying a component of `pickerView`. Components are numbered left-to-right.
     
     - returns: The string to use as the title of the indicated component row.
     */
    public func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
        let unicodeScalers = componentsString.unicodeScalars
        let index = unicodeScalers.index(unicodeScalers.startIndex, offsetBy: component)
