1

したがって、基本的な問題は、セルをクリックすると、新しいView Controllerのセルインデックス1に移動するはずですが、自動レイアウトがオンになっている場合です。コレクションビューのコンテンツ オフセットの変更がなくなり、リセットされます。オフにすると、正常に動作します。Autolayout がどういうわけかコンテンツ オフセットをリセットしていますが、これを解決する理由や方法がわかりません。

コードはこちらから入手できます。

https://github.com/HaloZero/AutolayoutCollectionViewIssue

4

2 に答える 2

1

コードを次のように使用します:--

- (void) viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [self performSelectorOnMainThread:@selector(doyouwork) withObject:nil waitUntilDone:NO];
}

-(void)doyouwork
{
    [self snapToCellAtIndex:1 withAnimation:NO];
}

- (void) snapToCellAtIndex:(NSInteger)index withAnimation:(BOOL) animated
{
    NSIndexPath *path = [NSIndexPath indexPathForRow:index inSection:0];
    [self.collectionView scrollToItemAtIndexPath:path atScrollPosition:UICollectionViewScrollPositionLeft animated:animated];
}

私の側で働いています。

于 2013-06-05T05:53:32.007 に答える