У меня есть функция, которая не дает подставить буквы в textField и возвращает "0.00" для пустой строки, но там используются if и guard, у которых есть свои отдельные return, из-за чего возникают некоторые трудности
Сама функция:
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
// Принимаемые значения для текстового поля
let allowedCharactersSet = CharacterSet(charactersIn: ".123456790")
let typedCharacterSet = CharacterSet(charactersIn: string)
guard let textFieldString = textField.text, let range = Range(range, in: textFieldString) else {
return false
}
let newString = textFieldString.replacingCharacters(in: range, with: string)
if newString.isEmpty {
textField.text = "0.00"
return false
} else if textField.text == "0.00" {
textField.text = string
return false
}
return allowedCharactersSet.isSuperset(of: typedCharacterSet)
}
Каким образом можно объединить все return, чтобы они одновременно работали?