一切都是正确的但仍然我的scrollView不滚动?

时间:2013-08-03 06:19:21

标签: iphone ios uiscrollview

我们都使用UIScrollView非常常见我已经在xib上使用了一个,并且已经设置好了所有属性,它在开始时滚动但后面我又放了一个视图并停止滚动,< / p>

[scroll setContentSize:CGSizeMake(containerViewOfRecurrence.frame.size.width, 1000)];
scroll.pagingEnabled = NO;
scroll.delegate      = self;
scroll.scrollEnabled = YES;
scroll.clipsToBounds = YES;

[scroll setBackgroundColor:[UIColor clearColor]];

我添加了委托方法来检测滚动,

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    NSLog(@"%f", scrollView.contentOffset.y);
}

并且在滚动时不会调用它。

以下是xib的图片

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:0)

当您添加其他新的UIView (自定义视图)时,您还需要更改contentSize的{​​{1}}。

之类的,

添加UIScrollView

UIView

答案 1 :(得分:0)

我明白了它的iOS 6问题,因为在iOS 6中内容大小是自动计算的,我们不需要以编程方式设置useAutoLayout计算它,并且随之而来,我们需要一个名为translatesAutoresizingMaskIntoConstraints的属性为NO

我添加了一些UIEdgeInsetsMake,以便获得更多滚动,

最后这是我的工作代码

//[scroll setContentSize:CGSizeMake(containerViewOfRecurrence.frame.size.width, 1000)];
scroll.pagingEnabled = NO;
scroll.delegate      = self;
scroll.scrollEnabled = YES;
scroll.clipsToBounds = YES;

[self.scroll setContentInset:UIEdgeInsetsMake(0, 0, 300, 0)];

self.scroll.translatesAutoresizingMaskIntoConstraints= NO;

[scroll setBackgroundColor:[UIColor clearColor]];