我有一个启用了分页的UIScrollView。但是,我希望此滚动 View 在经过一定时间后向右滚动。有没有一种简单的方法可以实现此目的,或者我需要使用计时器并以编程方式滚动滚动 View 吗?

该网站的标题中包含以下内容:http://denederlandsewateren.nl/ [注意,文本“De Nederlandse Wateren”每x秒更改一次]

最佳答案

您需要一些方法来帮助您滚动到确切的页面,虽然这没有实现,但是非常简单,假设您的滚动 View 称为myScrollview
假设您正在水平滚动,可以根据需要切换代码

-(void)scrollToPage:(NSInteger)aPage{
    float myPageWidth = [myScrollView frame].size.width;
    [myScrollView setContentOffset:CGPointMake(aPage*myPageWidth,y) animated:YES];
}

然后,您设置一个计时器,例如每5秒调用一次此方法,如下所示:
[[NSTimer scheduledTimerWithTimeInterval:5
                                  target:self
                                selector:@selector(scrollPages)
                                userInfo:Nil
                                 repeats:YES] fire];

下一步是创建将由计时器触发的方法并滚动到下一页,我将其称为-(void)scrollPages,它还要求您有两个名为currentPagenumberOfPages的全局变量,它们的类型均为NSInteger
-(void)scrollPages{
    [self scrollToPage:currentPage%numberOfPages];
    currentPage++;
}

如果没有任何意义,请通知我!

关于objective-c - 带分页的自动UIScrollView,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17168741/

10-10 21:03