如何在swift的uicollectionview中动态访问单元格属性

如何在swift的uicollectionview中动态访问单元格属性,swift,ios8,uicollectionview,uitextview,Swift,Ios8,Uicollectionview,Uitextview,UICollectionView的帮助我正在使用textview显示内容。Collectionview包含10个单元格。我无法根据textview的内容大小指定textview的高度。我一次显示一个单元格。在故事板中,文本视图高度为240px。但是我需要根据内容大小扩展内容视图。我的代码如下。但如果我跑, 接收为时出错:展开具有nil值的读取访问时发生致命错误。请引导我 // MAIN CLASS class read_page: UIViewController, UICollectionV

UICollectionView的帮助我正在使用textview显示内容。Collectionview包含10个单元格。我无法根据textview的内容大小指定textview的高度。我一次显示一个单元格。在故事板中,文本视图高度为240px。但是我需要根据内容大小扩展内容视图。我的代码如下。但如果我跑, 接收为时出错:展开具有nil值的读取访问时发生致命错误。请引导我

// MAIN CLASS

class read_page: UIViewController, UICollectionViewDataSource,UICollectionViewDelegate 
{



 @IBOutlet var reading_collection_view: UICollectionView!

 override func viewDidLayoutSubviews() {

    super.viewDidLayoutSubviews()


 }



func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: 
 Int) -> Int {

    return 10  
}

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

  var cell = story_collection_view.dequeueReusableCellWithReuseIdentifier("story_read", 
  forIndexPath: indexPath) as story_reading_cell

          cell.reading_area_txtvw.frame.size.height = 750

  return cell
}

// This code is working. But, from 3rd cell onwards it is working. When we compile,  
// textview does not change. After scrolling two more cells, it is working. How to get 
// its size from first cell onwards? How to change cell size?




}

首先需要注册collectionViewCell,然后在cellForItemAtIndexPath中可以将该单元格出列

我也不会使用UIViewController,而是使用UICollectionViewController,因为它提供了默认的委托和数据源实现

class read_page: UICollectionViewController {

    @IBOutlet var reading_collection_view: UICollectionView!

    override func viewDidLoad() {
        super.viewDidLoad()
        reading_collection_view.registerClass(reading_cell.self , forCellWithReuseIdentifier: "myCell")
    }

//MARK: UICollectionViewDataSource

    override func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return 1
    }

    override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
        let myCell = reading_collection_view.dequeueReusableCellWithReuseIdentifier("myCell", forIndexPath: indexPath) as reading_cell
        myCell.reading_area_txtvw.frame.size.height = myCell.reading_area_txtvw.contentSize.height
        return myCell

    }
}

线程1:EXC_BAD InstructionCode=EXC_1386错误:致命错误:在展开可选值时意外发现零