ios - 捕捉透明 UIView 上的触摸

标签 ios uiview

我有一个具有一系列自定义模式对话框 View 的应用程序。作为模式,我需要防止用户与对话框旁边的项目进行交互(例如,当出现暂停对话框时,我不希望用户能够触摸按钮来浏览应用程序)。为了使它们成为模态,我在每个对话框 View “后面”都有一个透明的 UIView 来捕获触摸。这工作正常,除了有一个 UIView 动画淡出对话框,当它们淡出对话框 View 时忽略触摸。

据我所知,问题是如果 UIView 的 alpha 不等于 1.0,那么它会忽略触摸。有没有办法让 UIView 具有一些 alpha 混合响应触摸?

最佳答案

UIView 不会忽略触摸,除非它的 alpha 为 0.0,或者如果它的“隐藏”属性设置为 YES。这两个设置都使 UIView 不可见。

我建议使用模态视图 Controller - 除非出于某种原因您希望显示其他按钮。您将为每个模态视图设置一个单独的 View Controller ,而不是透明 View 。然后,使用 View Controller 的 'presentModalViewController:animated:' 方法来控制它。

请注意,模态视图 Controller 可以嵌套(一个可以调用另一个),因此您可以根据需要将多个链接在一起。

关于ios - 捕捉透明 UIView 上的触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8810512/

相关文章:

ios - 无法同时满足 Storyboard中嵌入的 AVPlayerViewController 的约束警告

ios - 动画时透明的 UITableViewCell 闪烁背景

ios - UIView.animate 和完成问题

objective-c - 带旋转的 MKAnnotationView 图像

iOS - 如何将音频文件添加到另一个音频文件中?

android - 发送到设备后过期推送通知

ios - 从邮件中打开 iOS 应用程序中的链接

multithreading - 在后台线程上将 UIVIew 渲染为图像的安全方法?

ios - UITouch 和 UIEvents : fighting the framework?

swift - UIView 作为 subview 不会剪辑到 super View