Ios UITableViewCell变量;“表格视图单元格”;从未发生过变异
在swift 2.0中,当我试图创建UITableViewCell自定义类的var对象时,swift建议我将其转换为“let”,因为该对象从未发生过变异 我在UITableViewCell上有一个UIButton,但如果我将其对象设置为“let”,则在按钮的touchupinside方法调用中将其重命名为ABC 请参阅以下代码:Ios UITableViewCell变量;“表格视图单元格”;从未发生过变异,ios,swift,sdk,Ios,Swift,Sdk,在swift 2.0中,当我试图创建UITableViewCell自定义类的var对象时,swift建议我将其转换为“let”,因为该对象从未发生过变异 我在UITableViewCell上有一个UIButton,但如果我将其对象设置为“let”,则在按钮的touchupinside方法调用中将其重命名为ABC 请参阅以下代码: var nameCell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier(nameCell
var nameCell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier(nameCellIdentifier, forIndexPath: indexPath)
switch indexpath.row{
case 0:
nameCell.customButton.titleLabel!.text = "ABC"
case 1:
nameCell.customButton.titleLabel!.text = "DEF"
case 2:
nameCell.customButton.titleLabel!.text = "GHI"
}
return nameCell
结果:
var nameCell从未发生过突变,将其转换为let使用
而不是
nameCell.customButton.titleLabel!.text = "ABC"
并将var
更改为let
var nameCell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier(nameCellIdentifier, forIndexPath: indexPath)
使用
而不是
nameCell.customButton.titleLabel!.text = "ABC"
并将var
更改为let
var nameCell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier(nameCellIdentifier, forIndexPath: indexPath)
使用let代替var,如
let nameCell
,但如果我使用'let'则ui按钮
在其touchUpInside
方法calluse代替var,如let nameCell
,但如果我使用'let'则ui按钮
始终将其标题
返回为“ABC”在其toucupinside
方法callThank@UditS中,我正要发布同样的内容。我刚刚将它解析为标题标签。text
是swift的{get}
属性,需要setTitle
属性,但奇怪的是,我没有得到任何警告,我无法从swifsame行为中设置get属性。由于您试图设置的titleLabel.text
不是标签的{get}(只读)属性,因此不会给出任何错误。另一方面,如果您尝试将某些内容设置为标题标签
,例如标题标签=UILabel(frame:CGRectMake(0,0,0,10))
,则会出现错误。感谢@UditS,我正要发布相同的内容。我刚刚将它解析为标题标签。text
是swift的{get}
属性,需要setTitle
属性,但奇怪的是,我没有得到任何警告,我无法从swifsame行为中设置get属性。由于您试图设置的titleLabel.text
不是标签的{get}(只读)属性,因此不会给出任何错误。另一方面,如果您尝试将某些内容设置为标题标签
,例如标题标签=UILabel(frame:CGRectMake(0,0,0,10))
,它确实会给出一个错误。