2

我的 alertview 出现两次,需要 2 次用户点击才能关闭。

    - (void) showAlert: (NSString *) message
{
 UIAlertView *av = [[UIAlertView alloc] initWithTitle:@"You chose"
             message: message
            delegate: self
            cancelButtonTitle:@"Cancel"
            otherButtonTitles:@"ok",nil];
 av.tag = SLIDER_ALERT;
 [av show];

}

然后我在委托方法“alertView: (UIAlertView *) alertView clickedButtonAtIndex: (int) index”中释放警报视图

我怀疑问题是我以编程方式构建了自己的视图层次结构。我有一个视图控制器的父视图。在此之下,我还有 2 个其他视图(parentView -> subview1 和 subview2)。我试图调用 [self.view addSubview: av] 但这不起作用。BringToFrontSubView 也没有:

任何帮助将非常感激

佩曼

4

3 回答 3

0

警报代码很好(评论中提到的版本除外)。

[av show] 是显示视图所需的全部内容。您不会将 UIAlertViews 添加为子视图。

于 2010-03-11T14:21:15.493 回答
0

在延迟 0.1 秒后调用它 [self performSelector:@selector(showAlert:) withObject:nil afterDelay:0.10];

希望这能解决您的问题。

于 2011-03-15T05:13:12.640 回答
0

使用自动释放警报视图似乎是两倍或三倍。对于iOS4,它需要自动释放,否则会崩溃。

于 2011-01-12T13:04:26.160 回答