2015-03-02 3 views
2

В моем первом приложении я использую UICollectionView. Моя проблема в том, что я не могу получить число столбцов (или строк), рассчитанное в UICollectionView.Получить номер столбца в CollectionView IOS

UICollectionView находится внутри UIScrollView, и я хочу, чтобы установить высоту UICollectionView, потому что я не хочу, чтобы прокрутить в UICollectionView, но я хочу, чтобы увидеть все детали.

Возможно ли это?

Спасибо, FG

+0

ли вы имеете в виду количество столбцов? Или номер (индекс) столбца, нажатого и т. Д.? –

+0

после рендеринга, количество элементов, например, в первой строке, втором и т. Д. И количество строк в коллекцииView – Masterfego

+2

Это можно сделать, разделив ширину коллекции на ширину коллекцииViewCell. –

ответ

2

После многих исследований я нашел решение:

  • мне не нужно знать номер столбца или строки в представлении коллекции, если я хочу, чтобы зафиксировать высоту ,
  • Высота представления коллекции может быть обновлена ​​автоматически:

Добавить высоту сдерживать в целях сбора

Добавьте CollectionView и Ограничить как точки в ViewController:

@IBOutlet weak var heightConstrainCollectionView: NSLayoutConstraint! 
@IBOutlet weak var myCollectionView: UICollectionView! 

После просмотра Загрузка обновите высоту CollectionView:

override func viewDidAppear(animated: Bool) { 
    super.viewDidLoad() 
    heightConstrainCollectionView.constant = myCollectionView.contentSize.height 
    } 

Если пользователь повернуть устройство, обновить высоту CollectionView в:

override func didRotateFromInterfaceOrientation(fromInterfaceOrientation: UIInterfaceOrientation) { 
    heightConstrainCollectionView.constant = myCollectionView.contentSize.height 

// Add this if you want to see the height after rotation 
    println("New Width: \(newspaperCollectionView.contentSize.height)") 
} 

Теперь я не могу прокручивать в моей CollectionView и CollectionView показать все элементы

+0

Неправильно ли изменить ограничение только внутри 'override func viewWillLayoutSubviews()'? – loentar

Смежные вопросы