问题标签 [uialertcontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
14 回答
52236 浏览

ios - UIAlertView/UIAlertController iOS 7 和 iOS 8 兼容性

我正在使用 Swift 编写应用程序,我需要显示警报。该应用程序必须与 iOS 7 和 iOS 8 兼容。由于UIAlertView已替换为UIAlertController,如何在UIAlertController不检查系统版本的情况下检查 是否可用?我听说 Apple 建议我们不要检查设备的系统版本来确定 API 的可用性。

这是我在 iOS 8 上使用的,但在 iOS 7 上会崩溃,并带有“ dyld: Symbol not found: _OBJC_CLASS_$_UIAlertAction”:

如果我使用 iOS 8 的 UIAlertView,我会收到以下警告:Warning: Attempt to dismiss from view controller <_UIAlertShimPresentingViewController: 0x7bf72d60> while a presentation or dismiss is in progress!

0 投票
1 回答
13974 浏览

ios - 迅捷消息框

如何在 Swift 中添加消息框并使其与 IOS 7 + 兼容

我有以下适用于 IOS 8 的代码:

我有以下适用于 IOS 7 + 的代码(我不知道如何响应按钮单击):

如何修改这些代码中的任何一个并使其充分发挥作用?

0 投票
1 回答
1372 浏览

ios - 当呈现 actionSheet (AlertController) 时,如何修复 PopoverViewController 的边界?

当 ViewController 通过 UIPopoverPresentationController 以 iOS 8 方式呈现 actionSheet (AlertController) 时,ViewController 将其边界缩小到 actionSheet 的大小。

我试图做的是在弹出窗口上显示一个 actionSheet,但我以 iOS 8 的方式来做,我遇到了这种奇怪的情况。

这就是我遇到这种情况的原因”

  1. 当按下 barButtonItem 时,它会通过 UIPopoverPresentationController 弹出 ViewController。(如图1)
  2. 当按下 ViewController 上的按钮时,它会显示一个 actionSheet
  3. 然后 ViewController 将其大小缩小到 actionSheet 的大小。(如图2)

这是整个项目供参考。 https://github.com/allenlinli/ALtryEverything/tree/Q435235 它在“TryAlertOnPopoverOnBarButtonItemOniPad”项目中。

在此处输入图像描述

在此处输入图像描述

0 投票
3 回答
18559 浏览

ios - UIAlertController 处理在外部单击时关闭(iPad)

在 iOS8 之前,我们使用 UIActionSheet 来显示警报,现在我们需要使用 UIAlertController。

当我们使用 UIActionSheet 时,我们可以通过将 clickedButtonAtIndex 与 cancelButtonIndex 进行比较来轻松处理用户在弹出窗口之外单击的情况(这意味着他想取消操作) - 如果用户确实在弹出窗口之外按下,我们得到取消按钮索引在这个函数中。

我们如何使用新的 UIAlertController 处理这些情况?我尝试使用“完成”块,但它没有任何上下文。有没有简单的方法来处理这个?(除了“保存”一些一般变量中的动作状态)。

0 投票
1 回答
1628 浏览

ios - UIActionSheet 与 UIAlertController - iPad

我们是否必须在 iOS8 中使用 UIAlertController 或者我们仍然可以使用 UIActionSheet?

我不希望对 iOS 8 兼容性的代码进行大量更改,但是在 iPad 上使用 UIActionSheet 时遇到了几个问题。

例如,我在使用 UIActionSheet 时遇到了这个异常:

我知道最好使用新的 UIAlertController,但是为了继续使用 UIActionSheet,是否有任何解决方法?

同样在 UIActionSheet 实际显示的地方(无一例外)它包含一个箭头 + 它不像以前那样居中(iOS7) - 我正在使用 showInView (也尝试使用 showFromRect 但得到相同的结果)。

0 投票
10 回答
30299 浏览

objective-c - 从 UIView/NSObject 类显示 UIAlertController

我有working iOS application 为了support iOS8,我正在更换UIAlertView/UIActionSheet with UIAlertController

问题:
为了显示 UIAlertController 我需要 UIViewController 类的 presentViewController 方法。
但是UIAlertView 是从来自的类中显示的inherited, 由于明显的原因UIView or NSObject
我无法获取方法。[self presentViewController...]

我的工作:
我尝试从当前窗口获取 rootViewController 并显示 UIAlertController。

但是有一些旋转问题,比如如果我当前的视图控制器不支持旋转,如果 UIAlertController 打开,它将旋转。

问题:
有没有人遇到过同样的问题并有安全的解决方案?
如果是,请给我一些例子或提供一些指导

0 投票
12 回答
49347 浏览

ios - 有什么方法可以将 UIPickerView 添加到 Swift 中的 UIAlertController (Alert 或 ActionSheet) 中?

我对 swift (和 iOS 编程)完全陌生,但我开始弄乱它(当一切仍然是 beta 版本时,这不是一个好主意:D)。所以我试图自己弄清楚,但仍然没有。甚至尝试添加包含选择器的子视图但没有任何成功。那么任何人都可以帮助我吗?

0 投票
2 回答
4331 浏览

swift - 从 UIView 显示 AlertView?

在 SwiftUIAlertView中已弃用并替换为UIAlertController. 正如我所见,显示 a 的唯一方法UIAlertController是通过 a UIViewController,但有时您想从 a 中显示它,让我们说UIView

现在可以使用 IOS8 和 Swift 吗?

0 投票
5 回答
23805 浏览

swift - 防止解除 UIAlertController

我将 a 添加UITextField到 aUIAlertController中,它显示为AlertView. 在关闭 之前UIAlertController,我想验证 的输入UITextField。基于验证我想解雇UIAlertController或不解雇。但我不知道如何防止UIAlertController按下按钮时的解除动作。有没有人解决了这个问题或任何想法从哪里开始?我去了谷歌,但没有运气:/谢谢!

0 投票
1 回答
1160 浏览

ios8 - 显示 UIAlertController(actionsheet) iOS8 时出现运行时异常

当我在iOS8 Beta5+ Xcode6中显示UIAlertController(ActionSheet)时,运行时异常即将到来。

此错误仅发生在iPad设备中。

使用 UIAlertController 时出现以下异常。

*由于未捕获的异常“NSGenericException”而终止应用程序,原因:“UIPopoverPresentationController (<_UIAlertControllerActionSheetRegularPresentationController: 0x15794370>) 应该在演示发生之前设置一个非零的 sourceView 或 barButtonItem。”

我的显示 ActionSheet 代码如下