Swift ui类型为'的标签值;字符串';没有成员';文本';(静态自定义单元格)
我从json获取用户信息,但当我将值分配给标签时,它显示错误Swift ui类型为'的标签值;字符串';没有成员';文本';(静态自定义单元格),swift,uilabel,xcode8,tablecell,Swift,Uilabel,Xcode8,Tablecell,我从json获取用户信息,但当我将值分配给标签时,它显示错误(类型为'String'的值没有成员'text') 是否因为自定义静态表格单元格?如何修复它?我的基础不好…… 以及: 使用不同的变量名。最好使用唯一的变量名 由于变量名与变量值相同,因此会出现错误 UILabel具有名称empnamelab:UILabel(在viewDidLoad中)和值也具有相同的名称 改变 let empNameLabel = user!["crew_name"] as? String //conflictin
(类型为'String'的值没有成员'text')
是否因为自定义静态表格单元格?如何修复它?我的基础不好……
以及:
使用不同的变量名。最好使用唯一的变量名 由于变量名与变量值相同,因此会出现错误 UILabel具有名称
empnamelab:UILabel
(在viewDidLoad
中)和值也具有相同的名称
改变
let empNameLabel = user!["crew_name"] as? String //conflicting name with UILabel iboutlet
到
此外,您不应强制使用展开选项(user
)
应该是
var empNameValue = ""
if let unwrappedUser = user {
if let empNameValue = unwrappedUser["crew_name"] as? String {
empNameLabel.text = empNameValue //assign value to UILabel
}
}
您正试图从“字符串”中获取“.text”值,这是不可能的。
或者使用self:
self.empnameLabel.text = empnameLabel
或为字符串常量指定不同的名称:
self.empnameLabel.text = str
或者直接将该值存储到标签:
self.empnameLabel.text = user[crewname]! as! String
这就是当您为outlet和变量指定相同名称时发生的情况 变量empnamelab没有名为text的属性 text是empnamelab outlet的属性。 更改变量名。如 让empName=user![“船员姓名”]作为?字符串
- 更改标签变量名
- 将newLabelVariable.text设置为empNameLabel
self.empnameLabel.text = user[crewname]! as! String