-4

Webサービスからこの応答がありますが、UIAlertviewで奇妙なエラーが発生しています

私は応答を印刷し、すぐ下に電話しました

2013-08-13 15:40:27.463 Ipad Qld[1459:907] Result {
    msg = "Form has been sent successfully.";
    status = SUCCESS;
}

2013-08-13 15:40:27.465 Ipad Qld[1459:907] -[__NSDictionaryM isEqualToString:]: unrecognized selector sent to instance 0x1f1168e0
2013-08-13 15:40:27.467 Ipad Qld[1459:907] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSDictionaryM isEqualToString:]: unrecognized selector sent to instance 0x1f1168e0'
*** First throw call stack:
(0x32dad2a3 0x3ac1197f 0x32db0e07 0x32daf531 0x32d06f68 0x34bb9375 0x34d05c95 0x34d05741 0x6a25b 0x32cfe037 0x336ae2cb 0xa013f 0x9fe35 0x8d1e7 0x336e86fd 0x336281f9 0x33628115 0x32a8a45f 0x32a89b43 0x32ab1fcb 0x32cf374d 0x32ab242b 0x32a1603d 0x32d82683 0x32d81f7f 0x32d80cb7 0x32cf3ebd 0x32cf3d49 0x368aa2eb 0x34c09301 0x43a85 0x3b048b20)
libc++abi.dylib: terminate called throwing an exception

コードは

- (void) contactUsNotificationReceived:(NSNotification *) notification
{
    [[ActivityIndicator currentIndicator] hide];

    NSDictionary *alertMessage = [notification userInfo];
    NSString * alertMessageString = alertMessage[@"NSLocalizedString"];

    NSLog(@"Result is waga %@",alertMessageString);

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Result" message:alertMessageString delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];

    [alert show];
}
4

3 に答える 3

2

を渡しているようですNSDictionnary。推測、変更してみてください:

NSString * alertMessage; // the object that you think is a NSString

NSDictionary * alertMessage;
NSString * alertMessageString = alertMessage[@"msg"];

幸運を。

于 2013-08-13T10:48:56.810 に答える
1

あなたのコードは の問題のようですisEqualToString。ソース文字列が無効であるか、解放されているか、現在 を指していDictionaryます。

アラート文字列(説明したいもの)ではないかもしれませんNSStringが、そうかもしれませんNSDictionaryので、確認してください。

于 2013-08-13T10:48:48.683 に答える
1

まず、NSDictionary から NSString へのアラート メッセージを取得します...

  NSString *alertMessage = [yourDict objectForKey:@"yourKey"];

次に、アラートにアラート メッセージを表示します...

  UIAlertView *alert = [[UIAlertView alloc] initWithTitle:[NSString stringWithFormat:@"%@",alertMessage] message:nil delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
  [alert show];

これがお役に立てば幸いです。

于 2013-08-13T11:03:42.430 に答える