Iphone:UIAlertView在模拟器中工作,但使应用程序冻结在iPhone上

时间:2009-12-16 20:38:33

标签: iphone uialertview

我正在开发一个项目,在从具有空值的控制器返回后会弹出警报。它会在模拟器中弹出,但在iPhone上,应用程序冻结并从控制器返回时退出。有任何想法吗?

这是我的代码:

  - (void)manualBarcodeViewControllerDidFinish:(ManualBarcodeViewController *)controller
    {

        ......
        ......

        else if([barcode isEqualToString:@""])
        {
            UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"error" message:@"message" delegate:self cancelButtonTitle:@"cancel" otherButtonTitles:@"otherbutton"];
            [alert show];
        [alert release];
         }
     }

2 个答案:

答案 0 :(得分:2)

你应该看看这个问题,也许会有所帮助:

uialertview causes crash in release mode

答案 1 :(得分:2)

您的otherButtonTitles参数需要终止。

通常,采用可变数量参数的方法最后需要为nil。例如:

[NSArray arrayWithObjects:objA, objB, nil];

,在你的情况下:

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"error" message:@"message" delegate:self cancelButtonTitle:@"cancel" otherButtonTitles:@"otherbutton", nil];