我正在尝试从Core Data加载一个字符串,如果该行中的值等于“ - ”,则Accessory Disclosure Indicator将隐藏,单元格选择样式应为SelectionStyleNone
。
我试过了,但没有成功
if (entity.value == @"--"){
cell.selectionStyle = UITableViewCellSelectionStyleNone;
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
}
或
NSString *this = entity.value;
if (this == @"--") {
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
cell.selectionStyle = UITableViewCellSelectionStyleNone;
}
两者都没有工作,但这可能吗?感谢。
答案 0 :(得分:19)
我认为问题出在比较表达式上。正确的方法:
if ([entity.value isEqualToString:@"--"])
或
if ([this isEqualToString:@"--"])
答案 1 :(得分:1)
我可能会使用:
if ([userEventStatus.status.stringValue isEqual:@"--"])
这似乎是一个微妙的变化,但使用 isEqual 而不是 isEqualToString 意味着如果您更改通过它的数据类型,您的代码会更健壮( intValue,floatValue,CGPointValue)。您无需重写整个函数,只需更改输入的变量即可。
此类方法也可以轻松复制到应用程序的不同部分,并根据具体情况更改值。