Как извлечь значения из форм Eureka в swift для локальных переменных?

Хотя я пытаюсь передать его во временные переменные, похоже, этого не происходит.

Хотя при создании приложения ошибок нет, после попытки ввода значения для "rateOfPaddy" происходит сбой, ссылаясь на "фатальную ошибку: неожиданно обнаружен ноль при развертывании необязательного значения"

Пожалуйста, дайте мне знать, если я делаю что-то не так, будь то Свифт или Эврика?

    form +++ Section()
                <<< DateTimeRow() {
                    $0.tag = "RecordDateTag"
                    $0.title = "Date"
                    $0.value = NSDate()
                    }.cellSetup { cell, row in
                        cell.textLabel?.textColor = UIColor.blackColor()
                    }.onCellHighlight { _ in
                        if let dateInput = formInput["RecordDateTag"] as? String {
                            self.dateInputValue = dateInput
                        }
                    }.onCellUnHighlight { _ in
                        if let dateInput = formInput["RecordDateTag"] as? String {
                            self.dateInputValue = dateInput
                        }
                }

Я использовал обратный вызов.onChange для проверки и передачи информации в локальные переменные, что было бесполезно. Комбинации.onCellHighlight и.onCellUnHighlight тоже не сработали!!

2 ответа

Решение

Попробуйте вызвать функцию значений, как описано здесь

Вы можете создать метод, как показано ниже, и вызывать его из обратных вызовов onChange.

func updateValues() {
    let allFormData = formInput.values()

    if let dateInput = allFormData["RecordDateTag"] as? String {
        self.dateInputValue = dateInput
    }
}

Ошибка "Неустранимая ошибка: неожиданно найден ноль при развертывании необязательного значения" означает, что вы пытаетесь развернуть необязательный параметр, имеющий значение ноль в качестве значения.

Убедитесь, что каждый formInput[KEY] имеет значение ожидаемого типа, прежде чем принудительно развернуть его с помощью as!

Вы могли бы извлечь выгоду из Дополнительного Связывания

if let value = formInput["Some"] as? Int
{
    //Value exist and is an Int
}
else
{
    print("Not an Int")
}

Для получения дополнительной ссылки:

Swift Type Casting

Swift Дополнительно

Другие вопросы по тегам