【发布时间】:2019-06-28 09:06:03
【问题描述】:
我的视图层次结构是这样的:
UIView -> UIStackView
-> UIView
-> PlayerView
-> UIView
-> UIStackView
UITextField (title)
UIButton (close)
UIButton (settings) etc...
我的问题是...当屏幕加载时,如果我点击关闭或设置按钮,它会起作用。
问题是,如果我先单击播放器视图播放视频,然后我停止视频,当我点击任何 UIButtons 时,它都不起作用。按钮处于活动状态,但触摸事件不会触发。 您可以在此处查看播放器实现: github playerview example
奇怪的是……如果我点击 UITextField(标题)然后我可以再次点击 UIButtons,并且触摸事件正在触发。
我曾尝试将isUserInteractionEnabled = true 添加到我有按钮的 UIView 中,但它不起作用。
【问题讨论】:
-
检查是否有其他视图覆盖按钮。另外,添加相关代码。
-
@PGDev 没有其他视图覆盖,它根本不起作用。如果我不单击其他视图(UIView -> PlayerView),按钮会起作用 RushabhCShah 我在视图上设置 isUserInteractionEnabled = true,但它不起作用。
-
您需要在PlayerView的父级中启用UserInteraction方法。
-
请在调试器模式下分享您的 UI,并可能分享一些代码以便更好地理解。
-
@EmreCiftci 将图像添加到 ui 调试器模式...我认为问题出在播放器视图中,因为它是 UIWebView。单击播放器后,我无法单击下面 UIView 上的以下按钮。