隐藏/显示UITableViewCell附件披露指标

时间:2011-03-09 15:50:39

标签: iphone uitableview

我正在尝试从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;
}

两者都没有工作,但这可能吗?感谢。

2 个答案:

答案 0 :(得分:19)

我认为问题出在比较表达式上。正确的方法:

if ([entity.value isEqualToString:@"--"])

if ([this isEqualToString:@"--"])

答案 1 :(得分:1)

我可能会使用:

if ([userEventStatus.status.stringValue isEqual:@"--"])

这似乎是一个微妙的变化,但使用 isEqual 而不是 isEqualToString 意味着如果您更改通过它的数据类型,您的代码会更健壮( intValue,floatValue,CGPointValue)。您无需重写整个函数,只需更改输入的变量即可。

此类方法也可以轻松复制到应用程序的不同部分,并根据具体情况更改值。