我的应用程序有一系列自定义模式对话框视图。作为模态我需要阻止用户与对话框侧面的项目进行交互(例如,当出现暂停对话框时,我不希望用户能够触摸按钮来浏览应用程序)。为了使它们成为模态,我在每个对话视图后面都有一个透明的UIView
“来捕获触摸。这样可以正常工作,除了有一个UIView
动画可以淡化对话框,当它们淡出对话框视图时忽略了触摸。
据我所知,问题是如果UIView
的alpha不等于1.0,那么它会忽略触摸。有没有办法让UIView
使用某些alpha混合响应触摸?
答案 0 :(得分:0)
如果要为对话框视图的alpha设置动画,并且希望对话框视图在动画期间支持交互,则需要在创建动画时使用UIViewAnimationOptionAllowUserInteraction
选项。
答案 1 :(得分:0)
UIView不会忽略触摸,除非它的alpha为0.0,或者其'hidden'属性设置为YES。这两个设置都使UIView不可见。
我建议使用模态视图控制器 - 除非有某些原因你想要显示其他按钮。您可以为每个模态视图设置单独的视图控制器,而不是透明视图。然后,使用视图控制器的'presentModalViewController:animated:'方法来控制它。
请注意,模态视图控制器可以嵌套(可以调用另一个),因此您可以根据需要将多个链接在一起。