Я разбил на страницу collection view
в горизонтальном направлении, используя следующий код.Не удалось получить текущую страницу UICollectionView
- (void)viewDidLoad
{
[super viewDidLoad];
self.collectionView.pagingEnabled = YES;
self.collectionView.directionalLockEnabled = YES;
self.collectionView.bounces = NO;
self.collectionView.showsHorizontalScrollIndicator = NO;
self.collectionView.delegate = self;
[self setup];
self.pageControl.currentPage = 0;
self.pageControl.numberOfPages = floor(self.collectionView.contentSize.width/ self.collectionView.frame.size.width) + 1;
}
Я использую pageControl
, чтобы указать, сколько страниц у меня есть и текущая страница.
Я использовал метод, аналогичный приведенным ниже ссылкам, чтобы определить текущую страницу.
iOS6 UICollectionView and UIPageControl - How to get visible cell?
UICollectionView: current index path for page control
В следующем.
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {
NSInteger currentPage = self.collectionView.contentOffset.x/self.collectionView.frame.size.width;
self.pageControl.currentPage = currentPage;
}
Однако, это не сработало. Когда я прокручиваю collection view
на следующую страницу, pageControl
все еще указывает на самую первую страницу. Он не меняет свою ценность.
Я распечатал значение self.collectionView.contentOffset.x
, оно всегда находится внутри рамки (это первая страница, даже я перешел на следующую страницу), она никогда не переходит на следующую страницу.
Я сделал что-то не так?