如何处理UIAlertView iOS的显示
当出现警报时,如何处理UIAlertView iOS的显示,ios,cocoa-touch,Ios,Cocoa Touch,当出现警报时,ui查看是否接收任何事件?是否存在类似于lostFocus的现有事件 我知道可以覆盖UIAlertView的show方法,但我想知道是否有一种方法可以直接从层次结构的顶部视图处理它?我不得不这样做,这是一个巨大的痛苦 将其放在视图控制器中。(UIAlertView自iOS 8发布以来已被弃用) 您可以添加任意数量的操作。只需看一些注释: 如果是警报框,则警报控制器的样式为UIAlertControllerStyleAlert,如果需要屏幕底部的操作表,则为UIAlertContr
ui查看
是否接收任何事件?是否存在类似于lostFocus
的现有事件
我知道可以覆盖
UIAlertView
的show
方法,但我想知道是否有一种方法可以直接从层次结构的顶部视图处理它?我不得不这样做,这是一个巨大的痛苦
将其放在视图控制器中。(UIAlertView
自iOS 8发布以来已被弃用)
您可以添加任意数量的操作
。只需看一些注释:
- 如果是
,则警报框
的警报控制器
为样式
,如果需要屏幕底部的UIAlertControllerStyleAlert
,则为操作表
UIAlertControllerStyleActionSheet
的someAction
参数的处理程序
需要将参数块
作为action
UIAlertAction*
完成
采用无参数,当警报出现时调用块
- 当用户点击警报框或操作表中的选项时,将调用
hanler
块
UIAlertController
类或UIAlertAction
类的更多信息,请参阅苹果文档
有关Objective-C blocks的更多信息,请访问,或访问其更友好的对应对象。您到底想做什么?另外,为了以防万一,UIAlertView已被弃用。改用UIActionController。你能解释一下问题是什么吗?通常情况下,警报看起来是无害的,执行它的操作,然后返回,使下面的所有内容都不受影响,因为它是一个覆盖层。如果有问题,您应该在调用
show
之前处理它们。实际上,iOS中没有问题。我只是在JS上编写了跨平台UI库。我试图将cocoa方法(我非常喜欢)应用到我的框架中。所以我想知道如何在cocoa-touch中解决it问题。好的,很好。但是,如果警报是从第三方库生成的,并且没有机会更改它,该怎么办?类似于lostFocus
的东西非常适合这种情况。但我没有发现类似的情况:(
UIAlertController *someController = [UIAlertController alertControllerWithTitle:@"someTitle" message:@"someMessage" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *someAction = [UIAlertAction actionWithTitle:@"someTitle" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action){
// your code here for THE ACTION
}];
[someController addAction:someAction];
[self presentViewController:someController animated:YES completion:^{
// your code here for AFTER THE ALERT PRESENTS
}];