UICollectionView不显示所有项目

doo*_*man 1 xamarin.ios ios mvvmcross

我使用MVVMCross在Xamarin.iOs中开发,将ObservableCollection数据绑定到MvxCollectionViewSource,项目显示在UICollectionView中.将项目设置为ObservableCollection时,并非所有项目都显示在UICollectionView中.例如,如果我将10个项目设置到集合视图中,则只显示其中的7个项目.知道为什么会这样吗?

小智 6

我在iOS 8.0中遇到了同样的问题,但在iOS 9.0中没有,@ JordiVilaplana的回答给了我一个关于解决方案的提示.

问题似乎是estimatedItemSize属性UICollectionViewController.删除该行解决了问题.

事实上,如果文件高度是动态计算的,那么该属性才有用,如文档中所述:

当细胞动态调整其大小时,提供估计的细胞大小可以改善集合视图的性能.通过指定估计值,集合视图可以推迟确定其内容实际大小所需的一些计算.具体而言,假设不在屏幕上的单元格是估计的高度.

否则,如果您的单元格大小相同,请参考文档建议:

如果所有单元格的高度相同,请使用itemSize属性而不是此属性来指定单元格大小.

并避免这个问题:)