CocoaPods trunk is moving to be read-only. Read more on the blog, there are 18 months to go.

FormCell 1.3.0

FormCell 1.3.0

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release Mar 2017
SwiftSwift Version 3.0
SPMSupports SPM

Maintained by owner.



FormCell 1.3.0

  • By
  • masashi-sutou

FormCell

Overview

Demo

Requirement

  • Xcode 8
  • Swift 3
  • iOS 9.0 or later

Usage

// Example: - phone number in Japan

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = FormFieldCell(lengthError: (0, 11), pregError: (.phone, nil))
    cell.editField(textChanged: { (text, error) in

        self.user.tel = text
        if error.result {
            self.user.errorMessages[indexPath] = error.message
        } else {
            self.user.errorMessages.removeValue(forKey: indexPath)
        }

    }, didReturn: {

        if let cell = tableView.cellForRow(at: indexPath) as? FormFieldCell {
            cell.textField.resignFirstResponder()
        }
    })

    cell.textField.keyboardType = .numberPad
    cell.textField.placeholder = "enter your phone number"
    cell.textField.text = self.user.tel
    return cell
}

// Example: - save action

func saveTapped(_ sender: UIBarButtonItem) {

    var message: String = ""
    if self.user.errorMessages.isEmpty {

        message = "success to save"

    } else {

        for (_, s) in self.user.errorMessages {
            message += s + "\n"
        }
    }

    self.showAlertDialog("Result", message: message, buttonTitle: "OK") {}
}

Licence

FormCell is available under the MIT license. See the LICENSE file for more info.