在iPad上按下HOME按钮后,CollectionView崩溃

时间:2017-05-03 12:42:23

标签: ios swift3 uicollectionview

我有一个CollectionView,我动态设置其单元格的大小。问题出在这里:当我点击“主页”按钮并再次进入游戏时,CollectionView就会出现问题。所有的细胞都看起来很糟糕,它们的尺寸错误并且出现在错误的位置。它只在iPad上发生,在iPhone上完美运行。 这是我创建表的代码:

if collectionView == tableCollectionView{

        let cell:TableViewCell = collectionView.dequeueReusableCell(withReuseIdentifier: "letter_cell", for: indexPath) as! TableViewCell

        let size = Int(collectionView.frame.size.width) / (lettersCountInRow + 1);
        let j = indexPath.row
        let i = indexPath.section

        let letter = guessLogic!.letters[i * lettersCountInRow + j]
        let imageName = String(describing: letter)

        let vertical_shift = (Int(collectionView.frame.size.height) - size * 2) / 2
        let pad = Double(size) * 0.1;
        let start_x = Int(collectionView.frame.size.width) - size*7 - Int(pad) * lettersCountInRow;


        cell.letterImage.image = UIImage(named: imageName)
        cell.frame = CGRect(x:start_x + j * Int(pad) + j * size, y: i * size + vertical_shift + Int(pad), width: size, height: size)

        return cell

    }

在iPad Air-2上测试

这就是表格总是应该是这样的: Normal look

这是我按HOME并返回游戏后的样子: Wrong bullsh*t look

2 个答案:

答案 0 :(得分:0)

你在viewdidload()中设置了单元格的大小吗? 在这种情况下,尝试在viewdidappear()中查看。

答案 1 :(得分:0)

好吧,我找到了解决方案。这是因为方向。我禁用了横向方向,一切都开始完美。