你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> iOS- 用UICollectionViewController 來進行橫豎屏九宮格布局

iOS- 用UICollectionViewController 來進行橫豎屏九宮格布局

編輯:IOS開發綜合
1.簡單說說UICollectionViewController                    我們在做九宮格布局時,可以使用UIScrollView,也可以使用UICollectionViewController。   當我們用UICollectionViewController來進行九宮格布局,可以更加方便,省去很多麻煩,例如橫豎屏的適配。   UICollectionViewController 用起來非常簡單,只需要簡單的幾步,就能實現非常的漂亮的九宮格布局。   下面就說說UICollectionViewController實現的幾步。           2.UICollectionViewController的實現                    2.1.傳遞布局                                              首頁創建UICollectionViewController時,需要給它傳一個展示的布局,一般九宮格用的都使流水布局!   復制代碼     // 1.創建流水布局         UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];             // 2.設置每個格子的尺寸      layout.itemSize = CGSizeMake(250, 250);              // 3.設置整個collectionView的內邊距  CGFloat paddingY = 20;      CGFloat paddingX = 40;      layout.sectionInset = UIEdgeInsetsMake(paddingY, paddingX, paddingY, paddingX);           // 4.設置每一行之間的間距     layout.minimumLineSpacing = paddingY; 復制代碼         2.2.初始化UICollectionViewController,設置展示布局                            //初始化 UICollectionViewController UICollectionViewController *controller = [[UICollectionViewController alloc] initWithCollectionViewLayout:layout]             在對 UICollectionViewController 的 View 進行相關屬性設置和屬性修改時,記得要拿到UICollectionViewController.collectionView 再設置。            //設置背景 self.collectionView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_deal"]];       2.3.顯示數據                                              記得分別實現   <UICollectionViewDelegate, UICollectionViewDataSource>   之後再調用代理數據源方法和代理方法       復制代碼 #pragma mark - 數據源方法  2 /**  3  *  第section組有多少個格子(cell)  4  */  5 - (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section  6 {  7     return _deals.count;  8 }  9  10 //每個格子的內容 11 - (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath 12 { 13 //    indexPath.item    某一組的哪一個 14 //    indexPath.section 哪一組 15     // 1.創建cell 16     QCDealCell *cell = [QCDealCell cellWithCollectionView:collectionView indexPath:indexPath]; 17      18     // 2.取出模型,傳遞模型 19     cell.deal = _deals[indexPath.item]; 20      21     return cell; 22 }    
  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved