2017-06-08 13 views
-4

私は別のViewControllerにしてUICollectionViewを作るために、このコードを持っています、このようなあなたのcollectionView機能で2つのcollectionViewを1つのViewControllerに配置するにはどうすればよいですか?

example

+0

だから問題は何ですか? – Priyal

+1

2つのcollectionViewコントロールのコンセントを取得します。データソースとデリゲートメソッドが呼び出されると、メソッドからコレクションビューオブジェクトに基づいて条件がチェックされます。collectionView == self.firstCV {}の場合と同様です。 –

答えて

2

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { 
    return tvSeries.count 
} 

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { 
    let identifier = "Item" 
    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: identifier, for: indexPath) as! SeriesCollectionViewCell 
    cell.itemLabel.text = tvSeries[indexPath.row] 
    cell.itemImage.image = UIImage.init(imageLiteralResourceName: tvSeries[indexPath.row]) 

    return cell 
} 

override func prepare(for segue: UIStoryboardSegue, sender: Any?) { 
    let item = sender as? UICollectionViewCell 
    let indexPath = collectionView.indexPath(for: item!) 
    let detailVC = segue.destination as! DetailViewController 
    detailVC.detailName = tvSeries[(indexPath?.row)!] 
} 

私はこの絵のように2 CollectionViewsでのViewControllerを持ちたいですnumberOfItemsInSectionと入力し、collectionView引数が1つまたは他のコレクションビューと等しいかどうかを確認し、必要に応じて番号を返します。例えば

、あなたは以下のIBOutletsを持っていた場合:collectionView機能の残りのために同じことを行います

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { 
    if collectionView == collectionViewOne { 
     return itemSource1.count 
    } 
    else { 
     return itemSource2.count 
    } 
} 

@IBOutlet weak var collectionViewOne: UICollectionView! 
@IBOutlet weak var collectionViewTwo: UICollectionView! 

は、あなたのnumberOfItemsInSectionに変わります。

関連する問題