MutableArray加载.plist文件布尔值。我如何测试是真还是假?

时间:2009-11-08 23:32:00

标签: boolean nsmutablearray if-statement

我似乎在理解如何有条件地测试从.plist加载到mutablearray的布尔值时遇到了问题。我根本不明白我应该做什么并继续收到一个错误:传递'numberWithBool:'的参数1从指针生成整数而没有强制转换。任何帮助理解这一点表示赞赏!

继承我的代码:

if ([NSNumber numberWithBool:[[self.ListArray objectAtIndex:indexPath.row] valueForKey:@"TrueFalse"]]) {
    cell.accessoryView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"IsSelected.png"]];
}

1 个答案:

答案 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"]];
}