UIScrollView(分页模式)只有在有两个或更多页面时才会弹跳?

Jac*_*ack 1 uiscrollview bounce ipad

我只是有这个奇怪的问题.我有一个UIScrollView,我在该滚动中只有一个页面.滚动启用了分页并启用了跳出功能.

这是我的代码(在iPad中)

scroll = [[UIScrollView alloc] init];
scroll.pagingEnabled = YES;
scroll.showsHorizontalScrollIndicator = NO;
scroll.showsVerticalScrollIndicator = NO;
scroll.scrollsToTop = NO;
scroll.bounces = YES;
scroll.delegate = self;
CGRect frame = CGRectMake(0.0, 0.0, 768, 1004);
scroll.frame = frame;
[self.view addSubview:scroll];


UIView *view1 = [[UIView alloc] init];
view1.frame = CGRectMake(0, 0.0, 768, 1004);
view1.clipsToBounds = YES;
view1.backgroundColor = [UIColor redColor];
[scroll addSubview:view1];


scroll.contentSize = CGSizeMake(768 * 1, 1004);
Run Code Online (Sandbox Code Playgroud)

这很简单.我只创建一个UIView,并将其添加到滚动.并设置滚动的contentSize以保存完全一个视图.

但是在我运行它之后,滚动根本不会反弹.

如果我添加第二个视图并设置滚动的contentSize双倍宽度,它会反弹.

我想知道如果只有一页,滚动是否永远不会反弹?

谢谢

xeo*_*rno 9

你可以使用该属性:

scroll.alwaysBounceHorizontal= YES;
Run Code Online (Sandbox Code Playgroud)

要么

 scroll.alwaysBounceVertical = YES;
Run Code Online (Sandbox Code Playgroud)

或两者

不添加1px,如果在滚动视图内的UIView中添加可触摸元素,则会给您带来问题.

重新定义滚动框架后,再也不要忘记再次定义contentSize.甚至contentSize保持相同的值.

祝好运