【发布时间】:2012-05-29 06:17:48
【问题描述】:
我正在开发一个应用程序。我使用了一个视图并向其中添加了一个子视图。我的问题是当单击根视图中的一个按钮时,我添加了一个子视图(tableview)。当我在表视图中选择任何行时。然后从超级视图中删除视图。当我将子视图添加到根视图时。我想禁用根视图交互而不影响子视图交互。有可能吗?
【问题讨论】:
我正在开发一个应用程序。我使用了一个视图并向其中添加了一个子视图。我的问题是当单击根视图中的一个按钮时,我添加了一个子视图(tableview)。当我在表视图中选择任何行时。然后从超级视图中删除视图。当我将子视图添加到根视图时。我想禁用根视图交互而不影响子视图交互。有可能吗?
【问题讨论】:
在根视图的顶部放置一个透明或半透明的覆盖视图(Alpha = 0 到 0.5 取决于您),它的 frame = rootView.frame 位于根视图之上,然后将您的表格视图放入此覆盖视图中,不能有触摸事件路过,呵呵。
【讨论】:
userInteractionEnabled 的值会影响它所设置的视图的所有子视图,所以不,不是你想的那样。如果您希望禁用视图的触摸事件,请将其子类化并覆盖 - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event 以将其触摸转发到另一个视图。
【讨论】: