首页 > 解决方案 > 快速为 uiTextField 添加前缀

问题描述

我正在尝试将国家/地区代码添加为 textField 的前缀,以便用户可以输入他的电话号码的其余部分

   @IBAction func phoneLogin(_ sender: Any) {
    let countryCode = "+1"
    
    guard let phoneNumber = countryCode + MobileLbl.text! else { return }
    
    if ((MobileLbl.text?.isEmpty) != nil) {
        print("Fill Your Number")
    }else {
        OTPtxt.isHidden = false
        VerifyBtn.isHidden = false
    PhoneAuthProvider.provider().verifyPhoneNumber(phoneNumber, uiDelegate: nil) { (verificationId, error) in
        if error == nil {
            guard let verifyId = verificationId else { return }
            self.def.setValue(verifyId, forKey: "verificationId")
            self.def.synchronize()
            
            print(verificationId)
        } else {
            print("Unable to get Secret verification from firebase", error?.localizedDescription)
        }
    }
    
    }
    
}

我收到此错误条件绑定的初始化程序必须具有可选类型,而不是“字符串”

标签: iosswiftxcodeuitextfieldtextfield

解决方案


您正在强制展开MobileLbl.text!,这不再使其成为可选。去掉感叹号,所以它只是MobileLbl.text。还必须移动countryCode到另一行,因为它也不是可选的。

let countryCode = "+1"

guard let phone = MobileLbl.text else { return nil }

let phoneNumber = countryCode + phone

推荐阅读