2015-07-23 17 views
5

Ho bisogno dell'indice di una cella del mio UICollectionView. So come ottenerlo, ma il problema è quando converto questo NSIndexpath in Int. Questo è il mio codiceCome convertire NSIndexPath in Int in Swift?

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 

    let cell = sender as! UICollectionViewCell 
    let index = self.collectionView!.indexPathForCell(cell)! 

    let vc : VideosViewController = segue.destinationViewController as! VideosViewController 
    vc.id_category = self.result_category[index.row as Int]["id"].intvalue 
} 
+0

Accendi i passaggi quando un utente seleziona una cella? –

risposta

9

Non è necessario convertire il index.row per Int, è un Int già, vedere la dichiarazione di mela:

var row: Int { get } 

Nella classe NSIndexPath.

Basta fare vc.id_category = self.result_category[index.row]["id"].intvalue. Basta fare attenzione con il index of out bound nella matrice.

Spero che questo ti aiuti.