UIScrollView 没有一直滚动
Posted
技术标签:
【中文标题】UIScrollView 没有一直滚动【英文标题】:UIScrollView not scrolling all the way 【发布时间】:2012-11-17 19:07:44 【问题描述】:我已经编写了一个 UIScrollView 来滚动 320x800,但是它停止向下滚动某种方式,即使我在代码中更改大小它仍然停止向下滚动相同的方式,我唯一的想法是视图的高度是 548px。这是我目前在“ViewController.m”中的代码。
[ScrollView setScrollEnabled:YES];
[ScrollView setContentSize:CGSizeMake(320, 800)];
此代码当前保存在 - (void)viewDidLoad
中。所有链接都是在 Interface Builder 中创建的,编译时我没有收到任何错误。只是觉得我应该说我在 Xcode 4.5.2 中。
感谢任何帮助,谢谢。
编辑:我应该说UIScrollView
仍然滚动,但只是某种方式。
【问题讨论】:
滚动视图的帧大小是多少?? 将contentSize
设置得更大,因为这样scrollview
才能滚动。
@R.A 我在 Interface Builder 中的框架是 320 width
和 548 height
。
向下滚动多远。你怎么知道不是800px?
@danh 我使用 Interface Builder 将其更改为 320x800 并在底部放置一个标签,然后将其改回并居中,当我滚动时我看不到标签。
【参考方案1】:
通过尝试以下操作,您可以更清楚地了解问题所在...
- (void)viewDidLoad
[super viewDidLoad];
[ScrollView setContentSize:CGSizeMake(320, 800)]; // consider renaming to lowercase 'scrollView'
for (int i = 50; i < 800; i += 50)
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(20, i, 100, 22)];
label.text = [NSString string withFormat:@"label at y=%d", i];
[ScrollView addSubview:label];
请注意,循环在 750 处结束,所以这是您应该看到的最后一个标签。
【讨论】:
以上是关于UIScrollView 没有一直滚动的主要内容,如果未能解决你的问题,请参考以下文章
如何在 ios 中为 UIScrollView 设置对齐方式