0

我试图隐藏工具栏,直到我的数组中没有 null 或 0。但它可以有任何其他数字。我尝试对它们进行操作,但它也不起作用...我在 IBAction 方法中执行此操作所以每次单击它时,它都会检查数组...仅当它不包含 0 或 null 时,栏工具栏会出现...我做错了吗?

没有字符串只有数字值;

这是我下面的逻辑。

我像这样初始化了我的数组

for (NSInteger i = 0; i < myData.count; ++i)
{
    [arrayData addObject:[NSNull null]];
}



NSNumber *zero = 0;

if ([arrayData containsObject:@"null"] || [arrayData containsObject:zero]) {
    [self.navigationController setToolbarHidden:TRUE];
}
else{
    [self.navigationController setToolbarHidden:FALSE animated:TRUE];
}

NSLog 下面

"<null>",
"<null>",
"<null>",
"<null>",
1,
"<null>",
"<null>",
"<null>"

谢谢!!!

4

3 回答 3

1

你的 if 语句应该是:

if ([arrayData containsObject:[NSNull null]] || [arrayData containsObject:@0])
于 2013-02-18T03:42:10.653 回答
0

NSNumber *zero = 0;

您正在将指针的值设置为0,使其成为指向 nil 的指针。试试NSNumber *zero = @0;@0创建一个NSNumber值为 的对象0

[arrayData containsObject:@"null"]正如AKV所指出的,那是你真正想要的吗?

于 2013-02-18T03:30:26.683 回答
0

if ([arrayData containsObject:@"null"] || [rankData containsObject:zero])

containsObject:@"null" -> 您是在检查值为“null”的字符串还是检查数组是否为空?

[arrayData count]==0arrayData==nil将完成第二个要求的工作。


[rankData containsObject:zero]可以写成[rankData containsObject:@"0"]

于 2013-02-18T03:37:12.397 回答