আমি যুক্ত UICollectionView
করার চেষ্টা করছি ViewController
এবং আমার কাছে প্রতি সারিতে 3 টি সেল থাকতে হবে (ঘরগুলির মতো দেখতে এটি দেখতে হবে) কোষগুলির মধ্যে ফাঁকা জায়গা ছাড়াই 'প্রতি সারি প্রতি' সেল থাকতে হবে। কক্ষের প্রস্থ পর্দার আকারের এক তৃতীয়াংশ হওয়া উচিত, তাই আমি ভেবেছিলাম যে layout.item
প্রস্থটি একই হওয়া উচিত। তবে আমি এটি পেয়েছি:
যদি আমি সেই আকারটি হ্রাস করি ( উদাহরণস্বরূপ 7 বা ৮ পিক্সেল দিয়ে ) তবে এটি আরও ভাল তবে সারির তৃতীয় ঘরটি সম্পূর্ণরূপে দৃশ্যমান নয় এবং আমার এখনও শূন্য স্থান (উপরে এবং নীচে এবং বাম এবং ডানদিকে) রয়েছে।
class ViewController: UIViewController, UICollectionViewDelegateFlowLayout, UICollectionViewDataSource {
var collectionView: UICollectionView?
var screenSize: CGRect!
var screenWidth: CGFloat!
var screenHeight: CGFloat!
override func viewDidLoad() {
super.viewDidLoad()
screenSize = UIScreen.mainScreen().bounds
screenWidth = screenSize.width
screenHeight = screenSize.height
// Do any additional setup after loading the view, typically from a nib
let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
layout.sectionInset = UIEdgeInsets(top: 20, left: 0, bottom: 10, right: 0)
layout.itemSize = CGSize(width: screenWidth / 3, height: screenWidth / 3)
collectionView = UICollectionView(frame: self.view.frame, collectionViewLayout: layout)
collectionView!.dataSource = self
collectionView!.delegate = self
collectionView!.registerClass(CollectionViewCell.self, forCellWithReuseIdentifier: "CollectionViewCell")
collectionView!.backgroundColor = UIColor.greenColor()
self.view.addSubview(collectionView!)
}
func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {
return 1
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return 20
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier("CollectionViewCell", forIndexPath: indexPath) as CollectionViewCell
cell.backgroundColor = UIColor.whiteColor()
cell.layer.borderColor = UIColor.blackColor().CGColor
cell.layer.borderWidth = 0.5
cell.frame.size.width = screenWidth / 3
cell.frame.size.height = screenWidth / 3
cell.textLabel?.text = "\(indexPath.section):\(indexPath.row)"
return cell
}
}