2014-10-02 4 views
0

Я делаю проект, чтобы показать несколько изображений на iPad, моя проблема заключается в том, что я не могу настроить UICollectionView на размер экрана, а также, когда он вращается, чтобы создать ландшафт автоматической компоновки не работает, я действительно потерялся с этим, любая помощь очень приветствуется.Collection view auto layout

Вот простой пример, который я сделал на Git: Git project link

Вот код:

class ViewController: UIViewController { 

    @IBOutlet weak var mainMenuCollectionView: UICollectionView! 
    var images = ["220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg","220.jpg"] 

    override func viewDidLoad() { 
     super.viewDidLoad() 

    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
    } 

    func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int { 
     return 1 
    } 

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

    func collectionView(collectionView: UICollectionView!, cellForItemAtIndexPath indexPath: NSIndexPath!) -> UICollectionViewCell! 
    { 
     var cell = collectionView.dequeueReusableCellWithReuseIdentifier("cell", forIndexPath: indexPath) as HomeCollectionViewCell 
     cell.imageView.image = UIImage(named:images[indexPath.row]) 
     cell.textLabel.text = "Woof Woof" 
     return cell 
    } 
} 

Спасибо заранее.

ответ

1

В вашем примере проекта вы не настроили никаких ограничений макета. Например, представление коллекции должно иметь 4 ограничения: по одному для каждого направления: constraints

Если вы установили все 4 ограничения на 0, они всегда будут иметь тот же размер, что и его контейнер.

Для получения дополнительной информации вы должны прочитать руководство разработчиков Apple: https://developer.apple.com/library/IOs/documentation/UserExperience/Conceptual/AutolayoutPG/Introduction/Introduction.html

Или начать с некоторыми учебными пособиями: http://www.raywenderlich.com/50317/beginning-auto-layout-tutorial-in-ios-7-part-1

+0

Кровавых ад я не мог установить перечисленные сдерживает ... Я использую xcode6 беты 6. .. Теперь я обновился до xcode 6.1, и все работает отлично, спасибо за помощь :) – Bruno