xcode中的UIViewCollection有两个方向状态: 1.水平 2.垂直
我正在尝试使用垂直状态,但要使其从右到左显示单元格。默认当然是从左到右。
如果我不清楚我将使用一个例子: 假设我有一个连续3个单元格的Vertical collectionView,目前它只显示一行。当我添加另一个单元格(第4个单元格)时,我希望它出现在collectionView的右下角。目前它出现在左下角。
任何帮助都会很棒,
由于
答案 0 :(得分:0)
发现它!
我在其x pivot上镜像了集合视图,但我还需要镜像单元格。由于UICollectionView没有“willDisplayCell”或任何类似的东西,这有点蠢。
我就这样做了:
第一步 - 在viewDidLoad
中self.collectionView.layer.transform = CATransform3DConcat(self.collectionView.layer.transform, CATransform3DMakeRotation(M_PI,0.0,1.0,0.0));
第二步 - 在cellForItemAtIndexPath函数中
[self performSelector:@selector(flipCell:) withObject:cell afterDelay:0.0];
第三步 - 创建新方法
-(void)flipCell:(YESMyZoneCollectionViewCell *)cell{
cell.layer.transform = CATransform3DConcat(cell.layer.transform, CATransform3DMakeRotation(M_PI,0.0,1.0,0.0));
}
祝你好运......
---大编辑---
我上面给出的解决方案并不像我想的那样好,因为滚动的加载时间很长。
所以我做了类似的事情而没有“延迟执行”部分。
我用过这个:
-(void)scrollViewDidScroll:(UIScrollView *)scrollView {
NSMutableArray *visibleCells = [[NSMutableArray alloc] initWithArray:[self.collectionView visibleCells]];
for (int i = 0; i < [visibleCells count]; i++) {
customCellObject *cell = [visibleCells objectAtIndex:i];
if (cell.isFlipped == NO) {
[self flipCell:cell];
}
}
}
我还必须在cellForItemAtIndexPath中使isFlipped属性为NO,因为它们在重用时不会被翻转...