Вопрос об ответе https://stackoverflow.com/a/13555814/1678391 ответил на вопрос об установке элементов с переменным размером в UICollectionViewController. Я пытаюсь понять, как это сделать с объектом UICollectionView, содержащимся в UIViewController. GetSizeForItem - это то, что мне нужно, но не вижу, где его получить.Размеры ячеек UICollectionView
Моя реализация добавляет UICollectionView моему UIViewController через Xcode. В моем коде я делаю следующее:
public partial class CustomViewController : UIViewController
{
public override void ViewDidLoad()
{
collectionView.RegisterClassForCell(typeof(MyCell), cellId);
}
public override void ViewWillAppear(bool animated)
{
collectionView.Source = new CollectionViewSource(items, cellId);
}
class CollectionViewSource : UICollectionViewSource
{
}
class MyCell : UICollectionViewCell
{
}
}
Хотя я не использую UICollectionViewController. Просто UICollectionView в UIViewController. Установлен ли размер только при использовании UICollectionViewController? Спасибо – Vincent
Вы можете (http://stackoverflow.com/questions/14291889/how-can-we-use-uicollectionview-without-an-uicollectionviewcontroller). Попробуйте установить второй параметр в конструкторе 'UICollectionView' или позже установите свойство' CollectionViewLayout' 'UICollectionView'. –
Кажется, что вызов вызывающего подкласса делегата невозможен. flowLayoutDelegate = новый CollectionViewDelegateFlowLayout(); lineLayout = new CollectionViewFlowLayout(); коллекцияView.RegisterClassForCell (typeof (MyCell), CellId); коллекцияView.CollectionViewLayout = lineLayout; collectionView.Delegate = flowLayoutDelegate; – Vincent