0

配列にnullまたは0がなくなるまで、ツールバーを非表示にしようとしています。しかし、それは他の番号を持つことができます。それらをandingしようとしましたが、どちらも機能しません... 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

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

containsObject:@ "null"->値が"null"の文字列をチェックしていますか、それとも配列がnullかどうかをチェックしていますか?

[arrayData count]==0またはarrayData==nil2番目の要件の作業を行います。


[rankData containsObject:zero]次のように書くことができます[rankData containsObject:@"0"]

于 2013-02-18T03:37:12.397 に答える
0

NSNumber *zero = 0;

ポインターの値を に設定して、0nil へのポインターにします。試してみてくださいNSNumber *zero = @0;。値を持つオブジェクトを@0作成します。NSNumber0

[arrayData containsObject:@"null"]AKVが指摘したように、それはあなたが本当に望んでいることですか?

于 2013-02-18T03:30:26.683 に答える