具有自定义分页大小的 UIScrollView 不允许单击按钮

UIScrollView with custom paging size don't allow clickable buttons

提问人:IamRob 提问时间:12/15/2022 最后编辑:DonMagIamRob 更新时间:12/16/2022 访问量:66

问:

我正在尝试创建一个具有小于屏幕大小的分页的滚动视图,以便在滚动视图中的按钮之间对齐。经过一番头痛和搜索,我找到了一种解决方案来创建下面解释的自定义分页大小。问题是我的滚动视图中的按钮不可点击,因为 hitTest 正在覆盖它?

这个答案解决了一半的问题 https://stackoverflow.com/a/6948934/12264367......该代码可以创建捕捉效果,但我的按钮不可点击,我猜是因为 hitTest,但我不确定如何解决这个问题?

-(UIView *) hitTest:(CGPoint) point withEvent:(UIEvent *)event
{     
    UIView* child = [super hitTest:point withEvent:event]; 
    if (child == self && self.subviews.count > 0)  
    {
        return self.subviews[0];
    }
    return child;
}
iOS Objective-C Xcode UIscrollView

评论

0赞 HangarRash 12/15/2022
您是否查看了您链接的问题中的其他答案?一些人提到,公认的答案阻止了按钮的工作,而其他答案解决了按钮的问题。
0赞 IamRob 12/16/2022
我找不到其他人使用滚动视图上的按钮
0赞 DonMag 12/16/2022
@IamRob - 需要更多关于您正在尝试做什么的细节......这是这个想法吗?i.stack.imgur.com/skxiS.png---,所以你想让“页面”“对齐”到红色轮廓框的中心?如果是这样,一次一页,还是正常的滚动视图滑动减速?该框之外的“页面”应该是“可触摸的”吗?也就是说,从顶部看,用户可以从第 5 页拖动,还是只在红色轮廓框内拖动?如果页面有按钮,那么当页面位于中心框之外时,按钮应该处于活动状态,还是仅当它位于中心页面时才处于活动状态?
0赞 HangarRash 12/16/2022
@IamRob 使用 UIScrollView 委托方法的每个答案都比重写要好得多。scrollViewWillEndDragging:withVelocity:hitTest
0赞 IamRob 12/16/2022
我正在尝试创建一个像 ios 应用程序 funveo @DonMag 这样的界面,它有一个像 150x150 这样的小图标的滚动视图,它们会捕捉到中心。

答: 暂无答案