使用与其不同的方法解除警报视图

时间:2011-07-10 21:26:29

标签: iphone ios release uialertview dismiss

我在我的应用中购买了应用内购买,当购买是“正在购买”或正在进行中时,我会看到“正在加载...”的提醒视图。当购买成功,恢复或失败时,我想调用一个释放警报视图的方法。唯一的问题是,我不能尝试在另一种方法中释放警报视图,因为它不知道我正在谈论什么警报视图并将产生错误。现在我不知道这是否是尝试实现这一目标的最佳方式,所以所有的想法都值得赞赏。谢谢!

case stateIsPurchasing { //or whatever it's called

    UIAlertView *alert = [[UIAlertView alloc] message and delegate and button stuff here];

    [alert show];
    [alert release];
}

3 个答案:

答案 0 :(得分:2)

UIAlertView绝对不是正确的控件。

如果能够显示有限级数或UIActivityIndi​​catorView以显示“微调器”,则应使用UIProgressView。

答案 1 :(得分:2)

我不会为此使用警报视图。寻找进步HUD,例如SVProgressHUD,一个优秀而美丽的加载视图。

http://cocoacontrols.com/platforms/ios/controls/svprogresshud

SVProgressHUD用作单例,因此您可以从任何类显示/停止它。

答案 2 :(得分:1)

在标头中声明UIAlertView作为保留属性,合成并在dealloc中发布。使用此指针存储您在该代码段中创建的警报视图,并在其他方法中使用声明的指针。但是,在创建警报视图时不要调用[alert release];(除非您喜欢EXC_BAD_ACCESS错误!)。哦,如果您要添加应用内购买,请注意Lodsys ......