Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> iOS

Cách kiểm tra TextField rỗng hay không trong Swift

Giới thiệu

Kiểm tra ô nhập liệu (UITextField) có rỗng hay không là thao tác cơ bản khi validate form nhập liệu trên iOS.

Cách kiểm tra ngắn gọn

Giả sử myTextField là biến UITextField của bạn:

if let text = myTextField.text, !text.isEmpty {
    // TextField KHÔNG rỗng - có nội dung
} else {
    // TextField RỖNG (nil hoặc chuỗi rỗng "")
}

Ví dụ hoàn chỉnh với giao diện

Bước 1: Tạo dự án

Xcode → New Project → Single View Application → Tên "CheckEmptyTextField".

Bước 2: Thiết kế giao diện

Thêm 1 TextField, 1 Button ("Kiểm tra"), 1 Label (hiển thị kết quả) lên Main.storyboard.

Cách kiểm tra TextField rỗng hay không trong Swift

Bước 3: Kết nối IBOutlet

@IBOutlet weak var textField: UITextField!
@IBOutlet weak var resultLabel: UILabel!

Bước 4: Tạo IBAction cho Button

@IBAction func checkTextField(_ sender: Any) {
    if let text = textField.text, !text.isEmpty {
        resultLabel.text = "Text Field KHÔNG rỗng"
        resultLabel.textColor = .systemGreen
    } else {
        resultLabel.text = "Text Field RỖNG"
        resultLabel.textColor = .systemRed
    }
}

Bước 5: Chạy thử

  • Không nhập gì → Bấm "Kiểm tra" → Hiển thị "Text Field RỖNG".
  • Cách kiểm tra TextField rỗng hay không trong Swift
  • Nhập nội dung → Bấm "Kiểm tra" → Hiển thị "Text Field KHÔNG rỗng".

Các trường hợp cần lưu ý

Giá trị textField.texttext.isEmptyKết quả
nil (chưa gán)N/A (crash nếu không unwrap)Rỗng
"" (chuỗi rỗng)trueRỗng
" " (chỉ khoảng trắng)falseKHÔNG rỗng (cần trim)
"abc"falseKHÔNG rỗng

Cải tiến: Bỏ qua khoảng trắng

let trimmed = textField.text?.trimmingCharacters(in: .whitespacesAndNewlines) ?? ""
if !trimmed.isEmpty {
    // Có nội dung thực sự
}

Best Practice

  • Luôn dùng if let hoặc guard let để unwrap an toàn.
  • Kết hợp trimmingCharacters(in: .whitespacesAndNewlines) để loại bỏ khoảng trắng vô nghĩa.
  • Hiển thị feedback trực quan (màu sắc, icon) cho người dùng.