首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UIScrollView contentSize问题

UIScrollView contentSize问题
EN

Stack Overflow用户
提问于 2011-05-28 17:00:58
回答 2查看 4.8K关注 0票数 5

在我的视图中,我创建了一个宽度为320,高度为70的滚动视图。

响应用户触摸按钮,我展开滚动视图,使其大小为380(高)x 320(宽)。

代码如下所示:

代码语言:javascript
复制
CGRect scrollviewFrame = CGRectMake(0, 30, 320, 380);
[scrollView setFrame:scrollviewFrame];
[self layoutScrollImages:YES];
CGSize srect =  CGSizeMake([scrollView bounds].size.width, (kNumImages * kScrollObjHeight));
[scrollView setContentSize:srect];

当我调试这个项目时,我可以看到srect的大小是320 (宽)x 8000 (h);但是我的问题是可滚动区域(用户可以实际触摸滚动视图的区域)保持与原始大小相同。

很明显我漏掉了什么,有人知道是什么吗?

编辑:我已经创建了一个示例项目来说明我遇到的问题,可以在这里找到它:http://dl.dropbox.com/u/9930498/ScrollViewTest.zip

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-05-28 17:29:05

我认为,您的以下代码行有问题。

代码语言:javascript
复制
CGSize srect =  CGSizeMake([scrollView bounds].size.width, (kNumImages * kScrollObjHeight));
   [scrollView setContentSize:srect];

调试你的程序,看看srect的内容,也让我们知道下面两个常量的值

kNumImageskScrollObjHeight .

票数 2
EN

Stack Overflow用户

发布于 2011-05-28 17:08:49

您需要更改滚动视图和框架的contentSize。也许这也会有帮助:UIScrollView Class Reference

在设置新大小时执行此操作

代码语言:javascript
复制
scrollView.scrollEnabled = YES;
scrollView.showsHorizontalScrollIndicator = YES;
scrollView.showsVerticalScrollIndicator = YES;
[scrollView setFrame:CGRectMake(0, 30, 320, 380)];
CGSize srect =  CGSizeMake([scrollView bounds].size.width, (kNumImages * kScrollObjHeight));
[scrollView setContentSize:srect];
[self layoutScrollImages:YES];
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6160644

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档