UIButton没有回复UIScrollview分页

时间:2013-02-26 02:23:50

标签: ios xcode uiscrollview uibutton

我遇到了uiscrollview的问题。当我将它作为常规滚动视图时,所有UIButton都按预期工作。当我向其添加分页时,按钮不再响应。我有一个顶边伸出来,他们确实接受了那里的印刷机。它们肯定位于滚动视图的后面,但是当它按照我想要的方式移动时,它们会在页面上滚动和滚动。我已经阅读了很多不同的答案,但除非你使用手势控制器,否则大多数都不会提供答案。我附加了创建分页的代码段。你能让我知道我可能会失踪的吗?

-(void)scollPagingSetup:(float)frameSize {
float numberOfPages;
int maxheight;

[self.view setPagingEnabled:YES];
[self.view setBounces:YES];

UIView *first = [[UIView alloc]initWithFrame:self.view.frame];
[self.view addSubview:first];


maxheight = [UIScreen mainScreen].bounds.size.height;
numberOfPages = ceil(frameSize/maxheight);
for (int i = 1; i < numberOfPages; i++) {
    CGRect frame;
    frame.origin.x = 0;
    frame.origin.y = self.view.frame.size.height * i;
    frame.size = self.view.frame.size;

    UIView *subview = [[UIView alloc] initWithFrame:frame];
    [self.view addSubview:subview];

}

self.view.contentSize = CGSizeMake(self.view.frame.size.width, self.view.frame.size.height *numberOfPages);
}

提前谢谢你看看。我找到了可以解决这个问题的东西,但我无法理解真正解决问题的方法。这是该问题的链接:

IPhone UIButton doesn't respond in a UIScrollView

1 个答案:

答案 0 :(得分:0)

问题是内容大小未正确设置,因此您可以设置的最后一行代码(最后一行“}”之前的“可点击区域”(内容区域的大小)... scrollView的contentSize的框架本身只有0 ...尝试这个(我使用“first”(嵌套视图)而不是“self”(滚动视图本身)。

self.view.contentSize = CGSizeMake(firstframe.origin.x, (firstframe.origin.y - 20) * numberOfPages);

关于编辑答案的问题海报注意事项:
我改变了答案。在我使用应用程序之后,我还没有完全滚动。我做了更改以反映我为解决这个问题所做的工作并导致整页滚动。由于uiscrollview的偏移,需要-20偏移。可以在界面构建器中看到此偏移量。