这个问题是关于 iOS 验收测试框架 KIF 的。
我有一个使用 KIF 扩展的测试步骤UIView dragFromPoint:toPoint
。我有一个实现touchesBegan
/ touchesMoved
/ touchesEnded
/的自定义视图类touchesCancelled
。
在我的 KIF 测试步骤中,我将坐标转换为自定义视图的坐标并调用dragFromPoint
. NSLog
& 断点告诉我,touchesBegan
并且touchesMoved
在我的视图中被调用,但touchesEnded
不是。查看 KIF 代码,我可以看到它正在发布此事件,但我无法弄清楚为什么它没有被传递到我的视图中,而其他两个是。
这是我的 KIF 测试步骤代码的摘录:
// Convert points to coordinate system of the CoinView
CGPoint coinCenter = [view convertPoint:view.center fromView:view.superview];
CGPoint coinTarget = [view convertPoint:coinSlotTarget fromView:coinSlotView.superview];
[view dragFromPoint:coinCenter toPoint:coinTarget];