我似乎在理解如何有条件地测试从.plist加载到mutablearray的布尔值时遇到了问题。我根本不明白我应该做什么并继续收到一个错误:传递'numberWithBool:'的参数1从指针生成整数而没有强制转换。任何帮助理解这一点表示赞赏!
继承我的代码:
if ([NSNumber numberWithBool:[[self.ListArray objectAtIndex:indexPath.row] valueForKey:@"TrueFalse"]]) {
cell.accessoryView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"IsSelected.png"]];
}
答案 0 :(得分:0)
numberWithBool:
的方法NSNumber
需要布尔值(BOOL)作为参数。
[[self.ListArray objectAtIndex:indexPath.row] valueForKey:@"TrueFalse"]]
apearantly返回BOOL以外的内容。
要将NSNumber或NSString对象强制转换为布尔值,可以使用boolValue
方法。
因此,请尝试执行以下操作:
if ([NSNumber numberWithBool:[[[self.ListArray objectAtIndex:indexPath.row] valueForKey:@"TrueFalse"] boolValue]]) {
cell.accessoryView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"IsSelected.png"]];
}