我有一个UISplitView
像设计(不是真的UISplitView
,我用View container
来模仿它)。最初的UICollectionView页面是第二页而不是第一页
左侧容器有table view
,右侧容器有collection view
。
如果点击左侧容器中的tableview cell
,则右侧collection view
将相应更改。
collection view
分页,它总是有两个页面。
如果我滚动到collection view
的第二页,现在我的左容器点击新table view cell
,它会加载在正确的容器正确collection view
,但它是在第二页,而不是第一页!
我搜索并找不到解决方案。
我很欣赏任何建议。
更新:增加了相关代码。
以下代码位于right container
中。
- (void)viewDidLoad
{
[super viewDidLoad];
[self setup];
self.collectionView.delegate = self;
self.pageControl.currentPage = 0;
[self.collectionView scrollRectToVisible:CGRectMake(0, 0, self.collectionView.frame.size.width, self.collectionView.frame.size.width) animated:NO];
}
功能setup
定义如下:
-(void)setup
{
self.collectionView.pagingEnabled = YES;
self.collectionView.directionalLockEnabled = YES;
self.collectionView.bounces = NO;
self.collectionView.showsHorizontalScrollIndicator = NO;
}
感谢。
你在哪里设置collectionView的内容? –
我没有设置内容。它使用默认的一个。我已经发现了这个问题。你是正确的,我应该使用'[contentScrollView scrollRectToVisible:pageRect animated:YES];'设置位置。但我不应该把它放在ViewDidLoad中。由于这是'left container'的代表,所以我应该把它放在'delegate'函数中。然后它工作。谢谢! – user890207
很好,你明白了。其实,我为你创造了一个榜样。我即将发布它。但它能够解决它的好处。 –