1

私はobjective-cを初めて使用し、NSStringのstringValueを取得する方法を知りたいのですが、それがphotoと等しい場合は、//something

これは私が使用しているコードで、NSLogは「写真」を出力します。

私はiPhone用に開発しています。

NSString *getPageType = [self.webView stringByEvaluatingJavaScriptFromString:
                                 @"document.getElementById('pageType').name"];

    NSLog(@"%@", getPageType);



    if (getPageType == @"photo")
    {
        [UIButton animateWithDuration:3 animations:^{
            downloadOverlay.alpha = 1;
            downloadOverlay.alpha = 0;
        }];

    }
4

5 に答える 5

6
if ([getPageType isEqualToString:@"photo"])

トリックを行う必要があります。

于 2012-08-10T14:16:36.517 に答える
4

次を使用する必要があります。

if ([getPageType isEqualToString:@"photo"])
于 2012-08-10T14:16:40.527 に答える
2

getPageType == @"photo"メモリアドレス(ポインタ)を比較します。

[getPageType isEqualToString:@"photo"]本当に必要なことを実行します。つまり、2つの文字列の内容を比較します。

in C Language

const char *capital = "NewYork";

if(capital == "NewYork") // address compare

if (strcmp(capital,"NewYork")==0) // string compare
   printf("equal");
else
   printf("different");
于 2012-08-10T14:51:56.987 に答える
1

あなたはすでにあなたに答えを持っていることを知っていますがisEqual:、あなたが特に遅いと感じているならあなたも使うことができることを指摘したいと思います。

を使用する場合は、引数として単なる文字列(たとえば、など)isEqual:以上のものを渡すことができます。NSDataNSArrayNSDictionary

YES2つのオブジェクトが等しい場合と等しくない場合に返されますNO。ただし、これは文字列だけを比較する場合に使用するよりも遅くなりisEqualToString:ます。

于 2012-08-10T19:42:40.727 に答える
0

あなたは好きに使うことができます

NSString *getPageType = [self.webView stringByEvaluatingJavaScriptFromString:
                                 @"document.getElementById('pageType').name"];

    NSLog(@"%@", getPageType);



        if ([getPageType isEqualToString:@"photo"])
    {
        [UIButton animateWithDuration:3 animations:^{
            downloadOverlay.alpha = 1;
            downloadOverlay.alpha = 0;
        }];

    }
于 2012-08-24T12:59:11.967 に答える