Я немного начинаю с быстрым. Я пытаюсь просто создать представление коллекции, которое помещено в определенную область экрана (ландшафт iPad iOS). Возможно, что на самом деле есть ошибка collectionView ... Следующий код создает прикрепленное изображение. Проблема заключается в том, что полнота представления коллекции просто не отображается ...UICollectionView не отображается - ошибка?
import UIKit
class ViewController: UIViewController, UICollectionViewDelegateFlowLayout, UICollectionViewDataSource {
var collectionView: UICollectionView?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
layout.sectionInset = UIEdgeInsets(top: 300, left: 500, bottom: 30, right: 10)
layout.itemSize = CGSize(width: 32, height: 32)
collectionView = UICollectionView(frame: self.view.frame, collectionViewLayout: layout)
collectionView!.dataSource = self
collectionView!.delegate = self
collectionView!.registerClass(UICollectionViewCell.self, forCellWithReuseIdentifier: "Cell")
collectionView!.backgroundColor = UIColor.whiteColor()
self.view.addSubview(collectionView!)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return 40
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier("Cell", forIndexPath: indexPath) as! UICollectionViewCell
cell.backgroundColor = UIColor.orangeColor()
return cell
}
}
Кроме того, есть ли способ я могу избежать использования Flow Layout? Жесткий просмотр коллекции в порядке. Мне нужно представление коллекции 10x10, которое не будет меняться по размеру или количеству ячеек.
Ваши 'UIEdgeInsets' ** огромны **. Попробуйте что-то меньшее. Например, 'layout.sectionInset = UIEdgeInsets (вверху: 50, слева: 50, внизу: 50, справа: 50)' –
Спасибо за ответ - возможно, мое понимание UIEdgeInsets неверно. Ваша рекомендация помогает, но позволяет сказать, что я хочу, чтобы моя коллекция находилась в правом нижнем углу - вот где я получаю проблему. Если мои размеры экрана равны 1024x768, я бы подумал, что мои кросс-вставки должны быть чем-то вроде (сверху: 500, слева: 500, внизу: 0, справа: 0) ... нет? Разве это не даст мне представление коллекции в правом нижнем углу? –
Perfect - это помогает много - спасибо! –