Tag: uialertcontroller

UIAlertController:supportedInterfaceOrientations被recursion地调用

当两个警报一一呈现时,我意味着一个警报呈现在他们身上,另一个警报呈现和应用程序崩溃。 我用UIAlertController来显示警报。 应用程序仅在iOS 9设备中崩溃。 请帮助我在这一点上。

如何将TextField添加到Swift中的UIAlertController

我想显示一个UITextView的UIAlertController。 当我添加该行时: //Add text field alertController.addTextFieldWithConfigurationHandler { (textField) -> Void in } 我得到一个运行时错误: 致命错误:意外地发现零,而解包一个可选的值 let alertController: UIAlertController = UIAlertController(title: "Find image", message: "Search for image", preferredStyle: .Alert) //cancel button let cancelAction: UIAlertAction = UIAlertAction(title: "Cancel", style: .Cancel) { action -> Void in //cancel code } alertController.addAction(cancelAction) //Create an optional action let nextAction: UIAlertAction = UIAlertAction(title: […]

如何使用UIAlertControllerreplaceUIActionSheet?

我正在维护一个基于SDK 6.0的旧iOS项目。 这个项目的一个方法叫 -(void) showComboBox:(UIView*)view:withOptions:(NSDictionary*)options 用来显示combobox。 为了实现这个目标,它使用了iOS8上弃用的UIActionSheet。 我的解决scheme是这样的: if (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber10_8) { UIAlertController* alertController = [UIAlertController alertControllerWithTitle:@"title" message:@"message" preferredStyle:UIAlertControllerStyleActionSheet]; UIAlertAction* item = [UIAlertAction actionWithTitle:@"item" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) { //do something here //inform the selection to the WebView … [alertController dismissViewControllerAnimated:YES completion:nil]; }]; UIAlertAction* cancelAction = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) { [alertController dismissViewControllerAnimated:YES completion:nil]; […]

来自iOS8 GM的Popover的UIActionSheet

任何人都试图从popup窗口显示UIActionSheet时得到这个消息? 你的应用程序提供了UIAlertControllerStyleActionSheet风格的UIAlertController()。 具有此样式的UIAlertController的modalPresentationStyle是UIModalPresentationPopover。 您必须通过警报控制器的popoverPresentationController为此popup窗口提供位置信息。 您必须提供sourceView和sourceRect或barButtonItem。 如果在显示警报控制器时不知道此信息,则可以在UIPopoverPresentationControllerDelegate方法-prepareForPopoverPresentation中提供此信息。 在此之前,我使用了一些解决方法将UIActionSheet转换为UIAlertController,并且工作正常。 但是,似乎苹果试图解决UIActionSheet问题,我不想使用我的解决方法 – 但似乎我没有select…

从UIAlertController访问input

我有一个UIAlertController,当用户在TouchID屏幕上select“input密码”的时候会提示用户。 如何在屏幕上显示后恢复用户的input? let passwordPrompt = UIAlertController(title: "Enter Password", message: "You have selected to enter your passwod.", preferredStyle: UIAlertControllerStyle.Alert) passwordPrompt.addAction(UIAlertAction(title: "Cancel", style: UIAlertActionStyle.Default, handler: nil)) passwordPrompt.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.Default, handler: nil)) passwordPrompt.addTextFieldWithConfigurationHandler({(textField: UITextField!) in textField.placeholder = "Password" textField.secureTextEntry = true }) presentViewController(passwordPrompt, animated: true, completion: nil) 我知道确定button应该可能有一个处理程序,但现在这个代码并没有真正做任何事情,但我想通过println显示文本字段的输出。 这真的只是一个testing应用程序,我学习Swift和一些新的API的东西。

从Swift中的iOS alert中的TextField获取input值

我正在尝试使用input发出警报消息,然后从input中获取值。 我发现很多好的教程如何使input文本字段。 但我无法从警报中获得价值。

在iOS8 – iOS10中从操作表代表以模态方式呈现视图控制器

所以我注意到,在iPad上,当试图从UIActionSheet的委托方法中呈现视图控制器时,在iOS8 beta 3( 更新 :仍然发生在iOS 10中)上,“nothing”发生并且日志消息被输出到debugging控制台,表示在转换警报控制器的过程中尝试了演示文稿: Warning: Attempt to present <UIViewController: 0x…> on <ViewController: 0x…> which is already presenting <UIAlertController: 0x…>

为UIAlertAction编写处理程序

我向用户展示一个UIAlertView ,我不知道如何编写处理程序。 这是我的尝试: let alert = UIAlertController(title: "Title", message: "Message", preferredStyle: UIAlertControllerStyle.Alert) alert.addAction(UIAlertAction(title: "Okay", style: UIAlertActionStyle.Default, handler: {self in println("Foo")}) 我在Xcode中遇到了一堆问题。 文档中提到了convenience init(title title: String!, style style: UIAlertActionStyle, handler handler: ((UIAlertAction!) -> Void)!) 现在,整个街区/封闭物都比我头高一点。 任何build议都非常感谢。

检查UIAlertController是否已经呈现的最佳方法是什么?

我有一个tableview,加载时,每个单元格可能会返回一个NSError,我已经select显示在一个UIAlertController。 问题是我得到这个错误在控制台中,如果多个错误返回。 警告:尝试在MessagesMasterVC上显示UIAlertController:0x14e64cb00:0x14e53d800已经呈现(null) 理想情况下,我最好喜欢在我的UIAlertController扩展方法中处理这个。 class func simpleAlertWithMessage(message: String!) -> UIAlertController { let alertController = UIAlertController(title: nil, message: message, preferredStyle: UIAlertControllerStyle.Alert) let cancel = UIAlertAction(title: "Ok", style: .Cancel, handler: nil) alertController.addAction(cancel) return alertController } 基于马特的答案,我将扩展名更改为一个UIViewController扩展,它更干净,并节省了很多presentViewController代码。 func showSimpleAlertWithMessage(message: String!) { let alertController = UIAlertController(title: nil, message: message, preferredStyle: UIAlertControllerStyle.Alert) let cancel = UIAlertAction(title: "Ok", style: .Cancel, handler: […]

使用iOS 8在iPad上正确呈现UIAlertController

在iOS 8.0中,Apple引入了UIAlertController来replaceUIActionSheet 。 不幸的是,苹果没有添加任何关于如何呈现的信息。 我在hayaGeek的博客上发现了一个关于它的条目 ,但是它似乎在iPad上不起作用。 这个看法是完全错误的: 放错了地方: 正确: 我使用下面的代码在界面上显示它: let alert = UIAlertController() // setting buttons self.presentModalViewController(alert, animated: true) 有另一种方式来添加它的iPad? 还是苹果公司只是忘了iPad,还是没有实施呢?