2016-10-26 4 views
0

Ich habe ein Problem auf meiner UICollectionView.Falscher IndexPath meiner UICollectionView

Ich erstelle meine CollectionView mit 2 Listen. Die 2 Listen enthalten jeweils eine Kopfzeile. Zum Beispiel, wenn ich auf die erste Zelle auf meiner ersten Liste klicke, sende mir meinen Code indexPath.item = 0. Alles ist normal. Aber wenn ich auf den ersten Index auf meiner zweiten Liste klicke, gibt mein Index auch 0 zurück, aber ich ziehe es vor, der ersten Liste zu folgen.

Zum Beispiel, wenn ich 10 Stück in meiner ersten Liste habe (indexPath 0 -> 9) ich das erste Objekt meiner zweiten Liste möchte gleich bis 10 und nicht von vorne beginnen! Vielen Dank im Voraus.

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    if let cell = sender as? UICollectionViewCell, 
     indexPath = collectionView?.indexPathForCell(cell), 
     managePageViewController = segue.destinationViewController as? ManagePageViewController { 
     managePageViewController.videoList = dataSource.pictureOfVideo 
     managePageViewController.currentIndex = indexPath.item 
    } 
} 

enter image description here

+0

'NSUInteger index = 0; for (NSUInteger i = 0; i Larme

+0

Wenn die beiden Listen Teil von separaten Abschnitten sind, können Sie den Index basierend auf "indexPath.section" zusammen mit "indexPath.row" berechnen. –

+0

Bei meinem vorherigen Kommentar vergessen, den aktuellen Index hinzuzufügen: 'index + = indexPath.row ' – Larme

Antwort

0

IndexPath für eine Zelle gibt Ihnen Informationen darüber, wo es in der collectionView befindet. Der Zellindex kann durch seine section und item Eigenschaften in NSIndexPath identifiziert werden. Verwenden Sie die Kombination dieser Eigenschaften, um den genauen Standort zu ermitteln.

0

Sie tags in jeder Liste verwenden können und es überprüfen, wenn Notwendigkeit, den Wert zu erhalten, zum Beispiel

if (list.tag == 0 && indexPath.item = 0){ 
    //list 1 and indexPath.item is 0 
} 

if (list.tag == 1 && indexPath.item = 0){ 
    //list 2 and indexPath.item is 10 
} 

Ich weiß nicht, ist es ein Weg, um richten Sie diesen Wert aus, weil Sie eine neue Gruppe von CollcetionViewCell Kiste sind. Sie können auch anhand der Abschnitte nachverfolgen.

Verwandte Themen