我正在尝试制作一排可以水平滚动的按钮。就像 Pulse News Reader 应用程序中的新闻条目一样。我已经成功地在 UIScrollView 上启用了页面大小与按钮宽度相同的页面。即一次在屏幕上显示 3 个按钮,| 1 | 2 | 3 | ,如果我向左滑动,它会变成 | 2 | 3 | 4 |。我通过使用我在 stackoverflow 中创建的方法使这成为可能:
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
if ([self pointInside:point withEvent:event]) {
return scrollView;
}
return nil;}
通过在包含按钮行的 UIScrollView 中将 clipsToBounds 设置为 NO,然后在其顶部覆盖另一个视图以获取滑动手势。它移动并捕捉到完美的位置!
但是现在最大的问题是我不能点击除了bound里面的那个按钮!我应该怎么做才能使这些按钮可点击?我以为我可以获取触摸事件并将其传递给包含这些按钮的 UIScrollView,但我发现一旦使用上述方法,我无法得到任何 touchesBegan、touchesEnd、touchesMoved 和 touchesCancelled 响应。我一直痛苦地寻找出路几天,请指出我正确的方向。感谢您的关注!