UIScrollView和PageControl:视图之间的空间

时间:2011-03-01 07:00:51

标签: iphone objective-c uiscrollview uipagecontrol

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

    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 个答案:

答案 0 :(得分:1)

是的,您可以完全控制UIScrollView内所有UIView的放置以及页面控件相对于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;
}