gpt4 book ai didi

ios - UIAlertController 关闭速度很慢

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:33:32 25 4
gpt4 key购买 nike

在 iOS 8 之后,将我的实现更改为 UIAlertController 而不是 UIAlertView 让我有些头疼。

在点击按钮后用户界面开始响应之前,解雇大约需要一整秒的时间。这意味着用户认为有问题。

只有我一个人受苦吗?它跨越多个应用程序,对于像这样简单的实现来说也是如此。我在一个新的空白项目中尝试了这个。

- (IBAction)showAlertView {

[[[UIAlertView alloc] initWithTitle:@"test" message:@"test" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil] show];
}

-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {

NSLog(@"this is fast");
}

-(IBAction)showAlert {

UIAlertController *controller = [UIAlertController alertControllerWithTitle:@"test" message:@"test" preferredStyle:UIAlertControllerStyleAlert];

[controller addAction:[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {

NSLog(@"this is slow");

}]];

[self presentViewController:controller animated:NO completion:nil];

}

在任何内容打印到控制台之前,单击该按钮会产生大约 1 秒的延迟。警报的呈现完全没有延迟。

编辑:通过更近的计时,它可能更像是 700 毫秒,所以不是一整秒,但对于应该是瞬时的东西来说仍然太长了。

最佳答案

我知道这是一个老问题,但我遇到了同样的问题,在显示 UIAlertController 的 ViewController 中添加它为我解决了这个问题:

- (BOOL)canBecomeFirstResponder {
return YES;
}

快速版本:

override func canBecomeFirstResponder() -> Bool {
return true
}

关于ios - UIAlertController 关闭速度很慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37165632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com