gpt4 book ai didi

ios - Objective-C - 在 View Controller 关闭时在 UIAlertView 中提示的位置

转载 作者:行者123 更新时间:2023-11-28 20:17:13 24 4
gpt4 key购买 nike

当我关闭 View Controller 时,我想提示用户输入。在解雇实际发生之前,此输入是必要的。

我尝试将以下代码放入我的 View Controller 中:

-(void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^)(void))completion
{
UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"Hello!" message:@"Please enter your name:" delegate:self cancelButtonTitle:@"Continue" otherButtonTitles:nil];
alert.alertViewStyle = UIAlertViewStylePlainTextInput;
UITextField * alertTextField = [alert textFieldAtIndex:0];
alertTextField.keyboardType = UIKeyboardTypeNumberPad;
alertTextField.placeholder = @"Enter your name";
[alert show];

[super dismissViewControllerAnimated:flag completion:completion];
}

但是,由于 UIAlertView 不会阻​​塞和等待,因此会执行 super 调用。

我正在讨论是否从此函数中删除 super 调用,并将其移至 alertView:clickedButtonAtIndex: 函数。我想我随后需要存储首先传递到 dismissViewControllerAnimated 的标志和完成变量,以便我可以在 alertView:clickedButtonAtIndex: 函数中使用它们。

有没有更好的方法,让我不必为 super 调用存储这些参数值?

最佳答案

对我来说,我不明白为什么你不能在 alertView:clickedButtonAtIndex 中调用 dismiss。您可以将标志参数设置为 YES 或 NO,并将完成 block 参数设置为 nil。

当然,这确实需要在用户实际尝试关闭 View Controller 之前用 UIAlertView 提示用户。

关于ios - Objective-C - 在 View Controller 关闭时在 UIAlertView 中提示的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17596146/

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