Input-mask-ios: рдореВрд▓ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 16 рдордИ 2017  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: RedMadRobot/input-mask-ios

рдирдорд╕реНрддреЗ, рдЕрдЪреНрдЫреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдореБрдЭреЗ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдорд╛рди рд▓реАрдЬрд┐рдП, рдореЗрд░реЗ рдкрд╛рд╕ "{+7} ([000]) [000] [0000]" рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╕рд╛рде рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝реАрд▓реНрдб рд╣реИ рдФрд░ рд╕рдВрдкрддреНрддрд┐ рдЯреЗрдХреНрд╕реНрдЯрдлреАрд▓реНрдбред рдЯреЗрдХреНрд╕реНрдЯ рдореБрдЭреЗ "+7 (937) 444 3333" рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ ui рдХреЗ рд▓рд┐рдП рдареАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рд░реНрд╡рд░ рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореВрд▓ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпрд╛ рдореВрд▓ рдЗрдирдкреБрдЯ рдЯреЗрдХреНрд╕реНрдЯ "79374443333" рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдУрд╣ рдЕрдм, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИред рд╢реБрдХреНрд░рд┐рдпрд╛ !

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЕрд░реЗ @TikhonovAlexander
рдЖрдкрдХреЗ рдкреНрд░рд╢реНрди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдирдкреБрдЯ рдкрд░ рдирд┐рдХрд╛рд▓реЗ рдЧрдП value рд╕рд╛рде MaskedTextFieldDelegateListener ( MaskedTextFieldDelegate рдХреА рдПрдХ рд╕рдВрдкрддреНрддрд┐) рд╕реЗ рдХреЙрд▓рдмреИрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред

рджреВрд╕рд░рд╛, рдкреНрд░рддреНрдпреЗрдХ MaskedTextFieldDelegate рдХрд╛ рд╕рдВрдмрдВрдзрд┐рдд Mask рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдЖрдкрдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЦреБрд▓рд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрдк рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

let text = CaretString(string: textfield.text, caretPosition: textfield.text.endIndex)
let extractedValue = 
    maskedTextFieldDelegate.mask.apply(toText: text, autocomplete: ...).extractedValue

value рдлрд┐рд░ рд╕реЗ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдПред

рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдЖрдЧреЗ рдмрдврд╝реЗрдВ рдФрд░ рдЙрдирд╕реЗ рдкреВрдЫреЗрдВред

рдУрд╣ рдЕрдм, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИред рд╢реБрдХреНрд░рд┐рдпрд╛ !

рдореИрдВ рдорд╛рд╕реНрдХрд┐рдВрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ рд▓реЗрдХрд┐рди рдЕрдм рд╕рдлрд▓ рдорд╛рд╕реНрдХрд┐рдВрдЧ рдХреЗ рдмрд╛рдж рдореИрдВ рдЗрд╕реЗ рд░рд┐рд╡рд░реНрд╕ рдорд╛рд╕реНрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдореИрдВ рд╕рд░реНрд╡рд░ рдкрд░ рдкреНрд▓рд╛рди рдЯреЗрдХреНрд╕реНрдЯ рднреЗрдЬ рд╕рдХреВрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ: (релрем)-релрел (рдорд╛рд╕реНрдХ рдлреЙрд░реНрдореЗрдЯ рдХреЗ рд▓рд┐рдП ([резрез])-[резрез]), рдореИрдВ рдЗрд╕реЗ релремремрел рдХреА рддрд░рд╣ рдкрд╛рда рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ ExtractValue рдкреНрд▓рд╛рди рдЯреЗрдХреНрд╕реНрдЯ (рдЕрдирдорд╛рд╕реНрдХ рдЯреЗрдХреНрд╕реНрдЯ) рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ рдпрджрд┐ рдпрд╣ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

LinusGeffarth picture LinusGeffarth  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

KompoD picture KompoD  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Robuske picture Robuske  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

osterlind picture osterlind  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

caioremedio picture caioremedio  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ