Iphone 多行UIAlertView消息崩溃

Iphone 多行UIAlertView消息崩溃,iphone,cocoa-touch,uialertview,Iphone,Cocoa Touch,Uialertview,事故日志 -[UIAlertView displayScrollerIndicators]: unrecognized selector sent to instance 0x1fbaf120 代码是: UIAlertView *alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Some info",nil) message:str delegate:self cancelButtonTitle:NSLocalized

事故日志

-[UIAlertView displayScrollerIndicators]: unrecognized selector sent to instance 0x1fbaf120
代码是:

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Some info",nil) message:str delegate:self cancelButtonTitle:NSLocalizedString(@"Close", nil) otherButtonTitles: nil];
alert.tag = 12345;
[alert show];

其中
str
是带有
\n
字符的大型多行文本。

在代码中的某个地方,您正在使用
UIAlertView对象调用
displayScrollerIndicators
我认为您做错了什么。您正在使用
UIAlertView
的对象调用其他类方法。您无法调用此方法,因为此方法不在
UIAlertView
类下。

错误消息“
发送到实例XXX的未识别选择器”表示应用程序正在尝试调用不存在的方法。这种情况经常发生,因为方法在错误的对象上被调用。

有趣。。。这似乎是
UIAlertView
类中的一个bug

我刚刚做了一个快速测试,显示了一个包含几行信息的
UIAlertView
,在iPad模拟器(iOS 6.1)上,当显示13行或更多行时,alert view会中断。似乎在12行之后,警报视图不再变大,显然会发生一些错误,因为它认为必须滚动,但没有可用的滚动视图

所以,请确保在UIAlertView中显示的行数不超过12行,我会说

更新:

我刚刚做了另一个测试-我发现崩溃(不仅)与行数有关,而且与警报视图的
标记属性设置有关-当您没有设置
标记时,它仍然工作并显示滚动视图-当您设置标记时,它崩溃超过12行。。。奇怪

更新2(以及最后一次):


如果
tag
的整数值小于12345(我测试了121231234),那么它似乎也可以工作-只是更高的
tag
值会导致崩溃。仍然奇怪的是,
标记
属性是一个
NSInteger
,因此应该至少有32位,因此,12345在溢出方面应该不会有任何问题…

您将alertview对象放置在scrollView对象的位置搜索类中出现的
displayScrollerIndicators
,检查您是否使用
alert的
对象调用它。请提供
str
的值,这样就可以重现该问题。@rptwsthi UIAlertView在文本行数等于或大于13时调用displayScrollerIndicators。它不再显示可滚动的文本视图,它只是崩溃了!在以前版本的iOS中,当消息为13行或更多行时,UIAlertView中会出现可滚动的文本视图,现在它只是崩溃。。。看起来有警报视图bugWOW,难以置信:)谢谢你的帮助谢谢。。标签12345导致我在iOS6中崩溃(Bug)。。而iOS7的工作原理没有任何变化。。