latest
This commit is contained in:
parent
4f568ecbc8
commit
a2e6f3d5ff
@ -31,6 +31,14 @@ import Foundation
|
|||||||
return selectedRowText
|
return selectedRowText
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public func delimiter(for index: Int) -> String {
|
||||||
|
|
||||||
|
guard let delimiters = delimiters else { return " " }
|
||||||
|
guard index != components.count - 1 else { return "" }
|
||||||
|
|
||||||
|
return delimiters[index]
|
||||||
|
}
|
||||||
|
|
||||||
/// A string of the picker row concatenated by whitespace or delimiters if provided.
|
/// A string of the picker row concatenated by whitespace or delimiters if provided.
|
||||||
public var selectedRowText: String {
|
public var selectedRowText: String {
|
||||||
|
|
||||||
@ -38,13 +46,7 @@ import Foundation
|
|||||||
|
|
||||||
for i in 0..<components.count {
|
for i in 0..<components.count {
|
||||||
let pickerIndex = selectedIndexes[i] ?? 0
|
let pickerIndex = selectedIndexes[i] ?? 0
|
||||||
|
text += components[i][pickerIndex] + delimiter(for: i)
|
||||||
if i < components.count - 1, let delimiters = delimiters {
|
|
||||||
text += components[i][pickerIndex] + delimiters[i]
|
|
||||||
|
|
||||||
} else {
|
|
||||||
text += components[i][pickerIndex] + (i == components.count - 1 ? "" : " ")
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return text
|
return text
|
||||||
|
|||||||
@ -98,20 +98,21 @@ import UIKit
|
|||||||
set {
|
set {
|
||||||
textEntryFieldModel?.text = newValue
|
textEntryFieldModel?.text = newValue
|
||||||
|
|
||||||
if let regex = textEntryFieldModel?.displayFormat,
|
guard let regex = textEntryFieldModel?.displayFormat,
|
||||||
let mask = textEntryFieldModel?.displayMask,
|
let mask = textEntryFieldModel?.displayMask,
|
||||||
let newText = newValue {
|
let newText = newValue
|
||||||
|
else {
|
||||||
let range = NSRange(newText.startIndex..., in: newText)
|
|
||||||
|
|
||||||
if let regex = try? NSRegularExpression(pattern: regex) {
|
|
||||||
let maskedText = regex.stringByReplacingMatches(in: newText,
|
|
||||||
range: range,
|
|
||||||
withTemplate: mask)
|
|
||||||
textField.text = maskedText
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
textField.text = newValue
|
textField.text = newValue
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
let range = NSRange(newText.startIndex..., in: newText)
|
||||||
|
|
||||||
|
if let regex = try? NSRegularExpression(pattern: regex) {
|
||||||
|
let maskedText = regex.stringByReplacingMatches(in: newText,
|
||||||
|
range: range,
|
||||||
|
withTemplate: mask)
|
||||||
|
textField.text = maskedText
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user