在覆盖另一个视图后,iPhone重新获得了对窗口的关注

时间:2014-01-21 15:11:16

标签: ios window overlay

我在主窗口上覆盖了一个视图:

    UIWindow *keyWindow = [[[UIApplication sharedApplication] delegate] window];
    [actionSheet showInView: keyWindow];

哪个工作正常并采用UI Focus,主窗口变暗。

像这样删除叠加层

    [actionSheet removeFromSuperview];
    actionSheetVSTags = nil;

操作表很好,但主窗口没有输入焦点(保持黑暗)

尝试过一些像

这样的窗口方法
    UIWindow *keyWindow = [[[UIApplication sharedApplication] delegate] window];
    [keyWindow setWindowLevel: UIWindowLevelNormal];
    [keyWindow makeKeyAndVisible];

如何让主窗口再次获得UI焦点?

是的,我有理由在这里疯狂。

1 个答案:

答案 0 :(得分:1)

要以编程方式关闭actionSheet,您应该使用以下方法:

[actionSheet dismissWithClickedButtonIndex:buttonIndex animated:animated];

这与按下您在其中设置的按钮之一时操作表自动调用的方法相同。如果您已设置委托,则会调用:

– actionSheet:willDismissWithButtonIndex:

在删除之前然后

– actionSheet:didDismissWithButtonIndex:

后。

UIActionSheet Class Reference