快速为 uiTextField 添加前缀

Posted

技术标签:

【中文标题】快速为 uiTextField 添加前缀【英文标题】:add prefix to uiTextField in swift 【发布时间】:2021-01-27 13:01:09 【问题描述】:

我正在尝试将国家/地区代码作为前缀添加到 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)
        
    
    
    
    

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

【问题讨论】:

在文本字段前添加 UILabel 或者添加文本文件的左视图, 【参考方案1】:

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

let countryCode = "+1"

guard let phone = MobileLbl.text else  return nil 

let phoneNumber = countryCode + phone

【讨论】:

以上是关于快速为 uiTextField 添加前缀的主要内容,如果未能解决你的问题,请参考以下文章

编辑开始时更改 UITextField 背景

快速添加填充到 UITextField 的左边距

让按钮快速将文本添加到 UITextField

如何永久地显示从UITextField输入的数据到标签?

如果我更改 UITextField 的外观,UIBarButtomItem tintColor 不起作用

如何为所有节点/快速路由添加前缀