2011-03-01 66 views
1

是否可以在由UIScrollView和PageControl显示的视图之间添加一些黑色空间。这些视图中的每一个都是一个带有UiImageView的简单视图控制器,类似于相册。我想添加空间,所以当用户切换“页面”/照片时,两者之间存在一定的差距。UIScrollView和PageControl:视图之间的空间

scrollArea.pagingEnabled = YES; 
    scrollArea.contentSize = CGSizeMake(scrollArea.frame.size.width * [photos count], scrollArea.frame.size.height); 
    scrollArea.showsHorizontalScrollIndicator = NO; 
    scrollArea.showsVerticalScrollIndicator = NO; 
    scrollArea.scrollsToTop = NO; 
    scrollArea.delegate = self; 

我不想让图像变小,但那样做会诀窍。有任何想法吗?

回答

1

是的,您可以完全控制UIScrollView内的所有UIViews的放置位置以及页面控件相对于scrollview的位置。没有自动布局完成,这取决于你正确设置所有对象的框架属性,以便它们适合在“滚动视图”(可见区域=一个“页面”)的“页面”中很好地匹配

这里是一个例子关每个页面内的一个特定的X在滚动视图将内容添加到多个“页”,Y:

NSMutableArray *myLabels = [NSMutableArray arrayWithCapacity:numPages]; 
CGFloat itemX = 10; 
CGFloat itemY = 20; 
CGFloat itemWidth = 40; 
CGFloat itemHeight = 50; 

for (int i = 0; i < numPages; ++i) 
{ 
    UILabel *lbl = [[UILabel alloc] initWithFrame:CGRectMake(itemX, itemY, itemWidth, itemHeight)]; 
    [myScrollView addSubview:lbl]; 
    [myLabels addObject:lbl]; 
    [lbl release]; 
    itemX += myScrollView.frame.size.width; 
} 
+0

感谢您的答复,但我该怎么办呢?我试图让框架比手机屏幕大,但没有奏效。 – oscarm 2011-03-01 08:13:36

+0

使用滚动视图不增加其框架大小以添加内容时,可以增加contentSize。如果该维度中的contentSize不大于该维度的帧大小,则UIScrollView将不会在维度(左/右上/下)中滚动。查看我编辑的代码,将对象添加到UIScrollView的多个页面 – Bogatyr 2011-03-01 10:25:13