swift - 我怎样才能用 swift 4 或 5 重写它
问题描述
我收到一条错误消息,提示“字符”不可用:请直接使用字符串。
extension LoginViewController : UITextFieldDelegate {
func textField(_ textField: UITextField,
shouldChangeCharactersIn range: NSRange,
replacementString string: String) -> Bool {
if let username = self.usernameField.text,
let password = self.passwordField.text {
if ((username.characters.count > 0) && //This is where I get the error
(password.characters.count > 0)) { //This is where I get the error
self.loginButton.isEnabled = true
}
}
return true
}
}
我怎样才能解决这个问题?
解决方案
只需删除.characters
extension LoginViewController : UITextFieldDelegate {
func textField(_ textField: UITextField,
shouldChangeCharactersIn range: NSRange,
replacementString string: String) -> Bool {
if let username = self.usernameField.text,
let password = self.passwordField.text {
if username.count > 0 &&
password.count > 0 {
self.loginButton.isEnabled = true
}
}
return true
}
}
推荐阅读
- java - 如何从 Firebase 实时数据库中获取特定的孩子?
- spring - 未找到 SOAP Web 服务的 JAXB-API 实现
- r - 关闭切面标签的剪裁
- alarmmanager - 几分钟后,警报管理器停止触发 PendingIntent
- java - 休眠:对可嵌入字段进行排序不是对可嵌入字段中的所有多个字段进行排序
- python - DataFrame 按具有字典值的列分组
- c++ - 如何减少 C++ 优先级队列的值?
- javascript - 为什么VSCode对函数参数的类型检查会忽略类型对象?
- sql-server - 批量插入(SQL 服务器)是否仅适用于外部文件?
- reactjs - 如果在更新 aad 令牌时发生错误,我该如何重定向到登录页面?