我有一个屏幕,其中每个页面都有UIPageViewController
我有一个UIButton
。问题在于当用户按下按钮时按钮的按下/突出显示状态延迟大约半秒。两个状态图像都使用故事板设置为按钮。
这发生在模拟器和真实设备上。
现在,通过Google搜索,我发现了一些描述此问题的帖子,例如:
和
UIbutton only looks clicked (highlighted) on longPress?
在所有帖子中,解决方案是使用delaysContentTouches
设置并将其设置为false
。
问题是:我没有找到如何在UIPageViewController
的情况下应用此问题。大多数帖子都会在UIScrollView
或UITableView
中讨论此问题。
所以,问题是:如果是UIPageViewController
,我该怎么做?我没有看到UIPageViewController
有此设置,也没有找到任何其他方法来应用它。
答案 0 :(得分:1)
找到解决此问题的方法,这段代码将修复按钮突出显示的点击延迟但会阻止寻呼机滚动按钮本身。
public override func viewDidAppear(_ animated: Bool) {
for view in self.view.subviews {
if view is UIScrollView {
(view as? UIScrollView)!.delaysContentTouches = false
}
}
}
我在UIPageViewController
中找不到的原因是UIPageViewController
不是我预期的UIScrollView
的子类,但它包含它作为子视图。