2014-04-01 41 views
1

我有一個非常簡單的控制器。我有一個導航欄半透明設置爲NO和一個孩子UICollectionView視圖。問題是當我將半透明設置爲NO時,我的UICollectionView的高度在底部縮短(一直向下滾動)。當我將它設置爲YES時,我沒有問題,我的UICollectionView中的整行滾動到底部顯示正常。ios導航欄半透明設置爲NO更改底部UICollectionView的高度

我嘗試使用:

self.edgesForExtendedLayout = UIRectEdgeNone;

in viewDidLoad,viewWillLayoutSubviews,甚至viewDidLayoutSubviews但我仍然看到相同的問題。

那就是BEING底部剪裁掉高度的量似乎等於導航欄的高度,甚至在狀態欄高度,但我「不能確定。

回答

1

你嘗試將限制在您的收藏看法?我想知道你的收集視圖的幀是什麼......你可以嘗試使用調試器打印出來,並檢查幀與底部的分離是否爲0.

+0

下面是我發現的:我的主視圖的h = 504pt,w = 320pt。我的collectionview的h = 568pt,w = 320pt。似乎我的主要觀點不知怎的縮短了。 – samonderous

+0

還有一件事。我注意到在loadView中,我分配了主視圖self.view = ....,h = 548pt和w = 320pt。有些東西正在改變我的主視圖的高度。 – samonderous

0

我解決了這個問題。 UICollectionView的框架在loadView後分配我的主視圖。主視圖的新邊界只在loadView後計算。我將UICollectionView的框架的設置移到了viewDidLayoutS ubviews和一切正常。

+0

太棒了!很高興知道你解決了這個問題 –