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

UIScrollView + PageControl
EN

Stack Overflow用户
提问于 2015-05-30 17:08:28
回答 1查看 1.9K关注 0票数 1

我有一个带有滚动视图(初始大小: 390,170)和页面控件的视图控制器。我需要它从我的数组中每页显示一幅图像。但我有意想不到的结果(见下图)。

图像不是全宽度的,在第二页scrollView结束后。

这是代码

代码语言:javascript
复制
- (void)viewDidLoad {
    [super viewDidLoad];
    //Put the names of our image files in our array.
    imageArray = [[NSArray alloc] initWithObjects:@"header1.jpg", @"header2.jpg", @"header3.jpg", nil];
    [self.articlesPageControll setNumberOfPages:imageArray.count];
    for (int i = 0; i < [imageArray count]; i++) {
        //We'll create an imageView object in every 'page' of our scrollView.
        CGRect frame;
        frame.origin.x = 390 * i;
        frame.origin.y = 0;
        frame.size = self.articlesScrollView.frame.size;

        UIImageView *imageView = [[UIImageView alloc] initWithFrame:frame];
        [imageView setContentMode:UIViewContentModeScaleToFill];
        imageView.image = [UIImage imageNamed:[imageArray objectAtIndex:i]];
        [self.articlesScrollView addSubview:imageView];
    }
    //Set the content size of our scrollview according to the total width of our imageView objects.
    self.articlesScrollView.contentSize = CGSizeMake(self.articlesScrollView.frame.size.width * [imageArray count], 170);

}

- (void)scrollViewDidScroll:(UIScrollView *)sender
{
    // Update the page when more than 50% of the previous/next page is visible
    CGFloat pageWidth = self.articlesScrollView.frame.size.width;
    int page = floor((self.articlesScrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
    self.articlesPageControll.currentPage = page;
}

UPD:有图像的第3页确实存在,但是不可能滚动到这个页面

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-30 17:18:45

溶液self.articlesScrollView.contentSize = CGSizeMake(390 * [imageArray count], 170);

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30548986

复制
相关文章

相似问题

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