2015-08-30 35 views
5

進出口試圖分配一個UICollectionViewFlowLayoutUICollectionView,它運行在物理設備上正常,但模擬器打破,具有信號:與模擬器exc_arithmetic誤差只有,分配UICollectionView的FlowLayout

EXC_ARITHMETIC(代碼= EXC_i386_DIV,子碼=爲0x0)

這只是發生在一個模擬器,這是我的理解,這通常是一個被零除錯誤,但我沒有看到如何爲我實現那可能

代碼:

let flowLayout: UICollectionViewFlowLayout = UICollectionViewFlowLayout() 

flowLayout.itemSize = CGSizeMake(self.view.bounds.width * 0.67, 
             self.collectionView!.frame.height - 10) 

flowLayout.scrollDirection = UICollectionViewScrollDirection.Horizontal 

self.collectionView!.collectionViewLayout = flowLayout 

此外,我在這行得到信號:self.collectionView!.collectionViewLayout = flowLayout

和視圖範圍是:WIDTH:277.38高度:75.0

任何幫助,或替代方案會不勝感激!

+0

是'self.view.bounds.width' 0之前? – jtbandes

+0

@jtbandes沒有打印出維度給出寬度:277.38高度:75.0 –

回答

3

我在我正在處理的舊代碼上得到完全相同的問題,看起來我是從錯誤的方法調用此代碼。我把它移到了更合適的位置,viewDidLoad或init,它工作。

+0

聽起來只有這裏的一半解決方案。您應該可以隨時更改collectionViewLayout。 –

2

幫助調用

reloadData

setCollectionViewLayout

+0

它適用於我的案件。但爲什麼?????????? –