2015-09-01 109 views
1

我正在構建一個iOS應用程序,並使用故事板和自動佈局完成了所有佈局。使用帶透明導航欄的UICollectionView

我有一個視圖控制器與視圖層次如下。

enter image description here

而對於我添加的約束如下集合視圖,

enter image description here

該全視圖我已經把背景圖像,如圖所示的屏幕截圖。

enter image description here

我想達到的目標是使導航欄透明和獲取集合視圖滾動只到在導航欄滿足的地步。

我已經嘗試設置集合視圖的contentInset如下,

_collectionView.contentInset = UIEdgeInsetsMake(44, 0, 0, 0); 

但沒有改變。 我也嘗試將集合視圖嵌入到另一個UIView中,但集合視圖仍然不在該視圖的範圍內。

用我現在所擁有的集合視圖滾動,如下圖所示。

enter image description here

有什麼辦法解決呢?如果有人能幫忙,這將是一個很大的幫助。

+0

您可以顯示預期的設計? –

+0

你有沒有找到解決這個問題的辦法?謝謝 – arniotaki

回答

0

您無法向上滾動導航欄。所以,你需要定製像導航欄的酒吧。

0

您可以使用此:

[[UINavigationBar appearance] setBackgroundColor:[UIColor clearColor]]; 
    [[UINavigationBar appearance] setTranslucent:YES]; 

這對我的作品。

+0

是使導航欄透明不是問題。問題是使集合視圖僅滾動到導航欄,而不是超出。有沒有辦法做到這一點? – era

+0

嘗試調整contentView的框架而不是te的意圖 –

0

你可以嘗試設置+44在您的收藏鑑於Y原點:

self.collectionView.frame = CGRectMake(self.collectionView.frame.origin.x, 44, self.collectionView.frame.size.width, self.collectionView.frame.size.height); 

與Y = 0離開contentInset:

collectionView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0);