尝试调试一个奇怪的问题。
我有一个继承自UIView的类,它包含一个UIScrollView。 scrollview只是视图大小的一小部分,所以为了整个视图捕获触摸/滚动并将其发送到UIScrolLView,我已经覆盖了UIView的hitTest方法。
- (UIView *) hitTest: (CGPoint) point withEvent: (UIEvent *) event
{
if ([self pointInside:point withEvent:event])
{
return _scroller;
}
return nil;
}
如果我以纵向显示视图,然后旋转到横向,则hitTest响应不会正确旋转。如果我隐藏视图并重新显示它,它就像我期望的那样工作。
但是,如果我在横向中显示视图,然后旋转到纵向,则hitTest响应的行为与我们预期的一样。
我正在寻找一种解决方法(在旋转,隐藏,然后重新显示视图),但我想避免使用此黑客。
有什么想法吗?