我想知道是否有一种方法可以使 UICollectionView 行或标题保持类似于电子表格程序中的冻结窗格功能。
我基本上希望第一列和第一行保持静止,而其余部分是可平移的。
这可能与 UICollectionView 有关吗?
我想知道是否有一种方法可以使 UICollectionView 行或标题保持类似于电子表格程序中的冻结窗格功能。
我基本上希望第一列和第一行保持静止,而其余部分是可平移的。
这可能与 UICollectionView 有关吗?
我发现以下代码会将第一行/部分设置为始终可见,并将滚动相应的部分/行:
- (NSArray *) layoutAttributesForElementsInRect: (CGRect) rect
{
NSMutableArray *attributes = [NSMutableArray array];
for (NSInteger section = 0; section < self.collectionView.numberOfSections; section++)
for (NSInteger item = 0 ; item < [self.collectionView numberOfItemsInSection: section]; item++)
{
UICollectionViewLayoutAttributes *layout = [self layoutAttributesForItemAtIndexPath:[NSIndexPath indexPathForItem:item inSection:section]];
if(section==0 || item==0)
{
UICollectionView * const cv = self.collectionView;
CGPoint const contentOffset = cv.contentOffset;
CGPoint origin = layout.frame.origin;
if(item==0)
{
origin.x = contentOffset.x;
layout.zIndex = 1022;
}
if(section==0)
{
origin.y = contentOffset.y;
layout.zIndex = 1023;
if(item==0)layout.zIndex = 1024;
}
layout.frame = (CGRect)
{
.origin = origin,
.size = layout.frame.size
};
}
[attributes addObject:layout];
}
return attributes;
}