我有一个带有缩略图的垂直滚动视图,可充当ipad应用程序上特定项目的“侧面板”。
这是我设置内容大小的代码:
- (void)setScrollViewContentSize:(UIScrollView*)scrollView{
NSInteger viewCount = [scrollView.subviews count];
NSLog(@"viewCount: %d", viewCount);
NSLog(@"height: %f", (viewCount * 190.0f));
scrollView.contentSize = CGSizeMake( scrollView.superview.frame.size.width, (viewCount * 190.0f));
}
运行我的应用程序时,有一个菜单包含57个项目,因此viewCount日志显示为57,高度显示为10830。在另一个菜单上,我有13个项目,因此高度为2470。
这里的一切似乎都很好,但是当我滚动到视图的末尾时,带有57个图标的菜单上留有太多空白,而带有13个项目的菜单在最后一个项目上完美地结束了一点点空白(每个缩略图为183px )。我正在尝试找出原因,但似乎我拥有的菜单项越多,最后一项的滚动视图间距就越大。
我尝试调用scrollView sizeToFit,甚至尝试创建一个可见区域的CGRect,以便将苹果添加到我的框架中,但是这些都不起作用。有任何想法吗?
谢谢。
来自https://stackoverflow.com/a/14852596/1363779
float sizeOfContent = 0;
UIView *lLast = [scrollView.subviews lastObject];
NSInteger wd = lLast.frame.origin.y;
NSInteger ht = lLast.frame.size.height;
sizeOfContent = wd+ht;
scrollView.contentSize = CGSizeMake(scrollView.frame.size.width, sizeOfContent);
这是一个很好且简单的方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句