Textfield в Алерте

swift
xcode

#1

Привет! У меня есть Алерт с textfield и хочу чтобы данные в поле сохранялись в переменной text для использования в дальнейшем. для это в одной из кнопок алерта написал self.text = self.textfied.text! но ничего не происходит. Что я делал не так? Буду рад любой помощи. Спасибо


#2

davomore
Почитайте про области видимости при написании кода ( так у вас опять вопрос с похожей проблемой ) Обратите внимание на фигурние скобочки = { }
Теоретически ошибки в одной строчке кода - нет


#3

Если Вы используете текстовое поле в алерт контроллере, то не нужно писать “self.”


#4

Может, так получится?

Создайте переменную (например, txtField) вне алертконтроллера

    var txtField: String

Затем укажите в кнопке AlertControllera

     let myField = alert.textFields?[0]
     txtField = myField.text

И потом проверьте содержимое переменной txtField после отработки alert controller’а


#5
 let alert = UIAlertController(title: "Введите Мастер - Код", message: "Ведите данные", preferredStyle: UIAlertController.Style.alert)
            alert.addAction(UIAlertAction(title: "OK", style: UIAlertAction.Style.default, handler: nil))
            alert.addTextField { (masterKod) in
                masterKod.placeholder = "Мастер Код"
                masterKod.keyboardType = .numberPad
                
                let myKod = alert.textFields?[0]
                self.smenaMasterKod = (myKod!.text)!

вот написал, создал переменную, ниже печатаю smenaMasterKod, не работает что то