'String' 类型的 UILabel 值没有成员 'text'(静态自定义单元格)

UILabel Value of type 'String' have no member 'text' (Static Custom Cell)

我正在从 json 获取用户信息,但是当我将值分配给我的标签时,它显示错误 (Value of type 'String' have no member 'text')

是因为自定义静态table单元格吗?如何解决?我基础不好...


并且:

使用不同的变量名。具有唯一变量名的好习惯

由于变量名与变量值相同,您收到错误

UILabel 的名称为 empNameLabel : UILabel(In viewDidLoad),值也具有相同的名称。

改变

let empNameLabel = user!["crew_name"] as? String //conflicting name with UILabel iboutlet

let empNameValue = user!["crew_name"] as? String //variable name is unique

此外,您不应该强制展开选项(user 在您的情况下)

应该是

var empNameValue = ""
if let unwrappedUser = user {
    if let empNameValue = unwrappedUser["crew_name"] as? String {
        empNameLabel.text = empNameValue //assign value to UILabel
    }
}

您正试图从 "String" 获取“.text”值,这是不可能的。 要么使用 self:

self.empnameLabel.text = empnameLabel

或者给字符串常量起不同的名字:

self.empnameLabel.text = str

或者直接将该值存储到标签中:

self.empnameLabel.text = user[crewname]! as! String

这就是给出口和变量同名时发生的情况。

变量 empNameLabel 没有 属性 调用的文本。

text 是 empNameLabel 出口的 属性。 更改变量名称。例如 让 empName = user!["crew_name"] 作为?字符串

  • 更改标签变量名称
  • 将您的 newLabelVariable.text 设置为 empNameLabel