我有一个UIScrollView,里面有一个具有5个UITextViews的UIView。所有这些工作正常,我可以上下滚动。我有一个UISwipeGestureRecognizer以编程方式连接到UIScrollView。
当我收到滑动通知时,我会更新5个文本视图的内容。但是,更新后的文本实际显示最多需要30秒。如果我在按钮按下处理程序中更新5个文本视图的内容,它们将立即更新。
我尝试过在scrollView和contentView上调用setNeedsDisplay()。这没有帮助。我还尝试以编程方式滚动scrollView,但这也没有帮助。我已经验证了滑动手势处理程序正在与UI在同一线程中运行。
这是我viewDidLoad()中的代码
let leftSwipe = UISwipeGestureRecognizer(target: self, action: #selector(handleSwipes(_:)))
let rightSwipe = UISwipeGestureRecognizer(target: self, action: #selector(handleSwipes(_:)))
leftSwipe.direction = .left
rightSwipe.direction = .right
view.addGestureRecognizer(leftSwipe)
view.addGestureRecognizer(rightSwipe)
这些是我的回调
@objc func handleSwipes(_ sender: UISwipeGestureRecognizer)
{
if sender.direction == .left
{
print("swipe left")
}
else if sender.direction == .right
{
print("swipe right")
}
}