diff --git a/PagedImageScrollView/PagedImageScrollView.h b/PagedImageScrollView/PagedImageScrollView.h index 3706dee..002bb2c 100644 --- a/PagedImageScrollView/PagedImageScrollView.h +++ b/PagedImageScrollView/PagedImageScrollView.h @@ -22,4 +22,5 @@ enum PageControlPosition { @property (nonatomic, assign) enum PageControlPosition pageControlPos; //default is PageControlPositionRightCorner - (void)setScrollViewContents: (NSArray *)images; +- (void)setAutoplayTimeInterval:(NSTimeInterval)seconds; @end diff --git a/PagedImageScrollView/PagedImageScrollView.m b/PagedImageScrollView/PagedImageScrollView.m index 6395806..d825c0b 100644 --- a/PagedImageScrollView/PagedImageScrollView.m +++ b/PagedImageScrollView/PagedImageScrollView.m @@ -17,6 +17,7 @@ @implementation PagedImageScrollView #define PAGECONTROL_DOT_WIDTH 20 #define PAGECONTROL_HEIGHT 20 +#define PAGECONTROL_TIMER_INTERVAL 3.0 - (id)initWithFrame:(CGRect)frame { @@ -33,6 +34,31 @@ - (id)initWithFrame:(CGRect)frame return self; } +- (void)setAutoplayTimeInterval:(NSTimeInterval)seconds +{ + if (!seconds) + seconds = PAGECONTROL_TIMER_INTERVAL; + + NSTimer *timer; + timer = [NSTimer scheduledTimerWithTimeInterval: seconds + target: self + selector: @selector(handleTimer) + userInfo: nil + repeats: YES]; +} + +- (void)handleTimer +{ + if (_pageControl.currentPage == _pageControl.numberOfPages-1) + { + _pageControl.currentPage = 0; + }else + { + _pageControl.currentPage = _pageControl.currentPage + 1; + } + + [self changePage:self.pageControl]; +} - (void)setPageControlPos:(enum PageControlPosition)pageControlPos {