我需要帮助将变量放到UICollectionView单元上,以后再通过ViewController.swift中的函数获取
我尝试了这段代码,但在cell.idyoutube.text中遇到了问题

func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {

    if (collectionView == self.collectionView1)
    {
        var cell : FeaturedCollectionViewCell = collectionView.dequeueReusableCellWithReuseIdentifier(self.reuseIdentifierFeatured, forIndexPath: indexPath) as! FeaturedCollectionViewCell

        var imageFilename: UIImage!


        let imgURL: NSURL = NSURL(string: "http://www.mywebsite/images/imagestvos/feature-\(indexPath.row).jpg")!
        let request: NSURLRequest = NSURLRequest(URL: imgURL)


                    imageFilename = UIImage(data: data!)!
                    cell.featuredImage.image = UIImage(data: data!)!
                    cell.idyoutube.text = "Rqr3w8scm2E"
     }


        task.resume()

        return cell
    }

    return UICollectionViewCell()

}


这是通过单击激活的功能,但是在获取idyoutube.tex变量时遇到问题。

    func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {
    let cell : FeaturedCollectionViewCell = collectionView.dequeueReusableCellWithReuseIdentifier(self.reuseIdentifierFeatured, forIndexPath: indexPath) as! FeaturedCollectionViewCell
    let mylink = cell.idyoutube.text
}


我不知道是否要到达idyoutube我要去:let cell : FeaturedCollectionViewCell = collectionView.dequeueReusableCellWithReuseIdentifier(self.reuseIdentifierFeatured, forIndexPath: indexPath) as! FeaturedCollectionViewCell

最佳答案

您不应该在--dequeueReusableCellWithReuseIdentifier调用中使用didSelectItemAtIndexPath方法,因为此调用实际上是试图从单元池中获取可用单元,而不代表您正在点击的单元。

您需要使用传递到-[UICollectionView cellForItemAtIndexPath:]方法的索引路径进行-didSelectItemAtIndexPath:调用。
在返回的单元格中,您将找到存储的idyoutube.text属性。

10-02 02:26