我有一个启用了分页的 UIScrollView。但是我希望这个 ScrollView 在经过一定时间后向右滚动。有没有简单的方法来实现这个,还是我需要使用计时器并以编程方式滚动 ScrollView ?
类似于此网站的标题:http://denederlandsewateren.nl/ [注意文本“De Nederlandse Wateren”每 x 秒更改一次]
最佳答案
你需要一个小方法来帮助你滚动到准确的页面,这个没有实现,但它很简单,假设你的 ScrollView 叫做 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
,它还需要你有两个全局变量调用currentPage
和 numberOfPages
,都是 NSInteger
-(void)scrollPages{
[self scrollToPage:currentPage%numberOfPages];
currentPage++;
}
如果有什么不明白的地方请告诉我!
关于objective-c - 带分页的自动 UIScrollView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17168741/