当我从另一个警报创建警报时,我得到wait_fences:未能收到回复

时间:2012-06-15 05:45:31

标签: ios

我想从警报创建警报。但它崩溃了。 我在代码下使用来创建警报:

{ 
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:nil message:inMessage delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
[alert show];
}

错误信息是:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSError isEqualToString:]: unrecognized selector sent to instance 0x88b84c0'

看起来inMessage已经发布了。所以我将inMessage更改为@“test test”。它可以工作,但可以wait_fences: failed to receive reply:10004003

如何在警报中创建警报?

1 个答案:

答案 0 :(得分:1)

正如其他人在评论中指出的那样,这里的问题是你有一个被错误地作为NSString处理的NSError。

inMessage似乎是您的NSError对象。这在编译时滑过类型系统,因为userInfo不知道其元素的类型。

要解决此问题,您可能希望获取错误消息的描述并使用

之类的内容显示错误消息
NSString *inMessage = [[userInfo objectForKey:@"NSUnderlyingError"] localizedDescription];