我有collection view
以swift 3
以編程方式編寫。它有1個部分和6個垂直項目。每個項目的默認最小行距爲10我假設,但我想爲每個項目設置不同的行間距。例如,項目0和1之間的空間變爲50,但項目1和2之間的空間變爲0.我該怎麼做?我搜查了很多,但找不到解決方案。提前致謝。UICollectionView中每個項目的不同行距 - swift 3
2
A
回答
2
它是直接不可能通過設置集合視圖的某些屬性,但你可以做一個絕招我認爲,
設置你的minimum line spacing
和minimum interitem spacing
到0
一樣,
layout.minimumInteritemSpacing = 0
layout.minimumLineSpacing = 0
所以你collection view cell
不會在任何方面的任何空間!
現在保持你的細胞的背景色爲清晰的顏色!
並在您的單元格中添加UIView
(您的內容),其大小(小於單元格大小)顯示兩個單元格之間的間距。因此,您可以在每個單元格中添加不同大小的視圖,並且它將顯示爲每個單元格之間不同的空間!
或者
如果你不想調整細胞的你內心的看法,那麼你可以爲你的細胞從委託方法sizeForItemAtIndexPath
爲不同的項目返回不同的尺寸!
例如,
我寫Objective C的代碼,例如,
您sizeforitem
,
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.item == 1 || indexPath.item == 6 || indexPath.item == 7 || indexPath.item == 9 || indexPath.item == 15) {
return CGSizeMake(screenWidth/3 -20, screenWidth/2);
}
return CGSizeMake(screenWidth/3, screenWidth/3);
}
和結果是
0
一個想法可能是將行間距視爲「其他類型的單元格」,如空白單元格,您會看到?在方法heightForRowAtIndexPath
中,當indexPath對應那些空白單元格時,返回它們的自定義高度,否則返回「真實」單元格的行高度。
(這意味着在cellForRow返回這些空白單元格,並增加其數量,以你目前的numberOfRowInSection算過)
相關問題
- 1. layoutAttributesForElementsInRect Swift 3(UICollectionView)
- 2. Swift 3每個角的不同角cornerRadius Swift 3 - iOS
- 3. Swift - UICollectionView連續顯示多個項目
- 4. Array返回每行中的每個項目而不是每行一個項目
- 5. 在UICollectionView中只顯示每行一個項目
- 6. UICollectionView - 每行兩列和等間距
- 7. bootstrap col-sm-6每行3個項目
- 8. 每個項目和每一行之間的間距
- 9. Swift 3中的AddGesture不同?
- 10. Recycler View中每個項目的不同項目視圖
- 11. WPF列表中每個項目的不同項目模板?
- 12. 如何獲取每個項目不同子項目的計數?
- 13. UICollectionView不同segue爲每個UICollectionViewCell
- 14. 斯威夫特3如何在指數UICollectionView顯示爲每個項目不同的數據
- 15. 從Swift中獲取3個獨特的項目 - 每個都有唯一值
- 16. UICollectionView中的項目與流佈局之間的固定間距
- 17. Swift,UICollectionView和UINavigationBar上邊距問題
- 18. 爲Symfony 3中的每個項目指定不同的驗證組?
- 19. 如何爲每個ExpandableListView子項目執行多個不同的佈局,每個ExpandableListView子項目單擊時
- 20. 如何使UICollectionView中的最後一行粘滯使用swift 3
- 21. 每個項目數行
- 22. ReactCSSTransitionGroup不同transitionEnterTimeout每個項目
- 23. Xcode項目中的兩個swift/ios目標有不同的選項可用
- 24. 同一活動中每個Spinner項目的不同內容
- 25. 顯示ArrayList項目每行3?
- 26. Xcode中的Swift項目:同一個項目中的三個不同的應用程序
- 27. Swift 3如何管理不同目標的不同代表
- 28. 爲同一個項目編譯不同的代碼 - Swift框架
- 29. Scrapy:每個項目一行
- 30. 爲列表框中的每個項目加載不同的DataTemplate