我有一个UICollection视图,它有一堆单元格,当用户按下一个id就像让它有点动画一样。我遇到的问题是动画竞争没有持续时间。就像它只是忽略了动画一起。
来自集合视图的代码。细胞只是我正在使用的细胞集合,我试着做cellForItemAtIndexPath:
但是我无法在细胞内调用方法。所以我创建了一个数组,并在创建它们时将每个单元格放在那里。
-(void)collectionView:(UICollectionView *)collectionView didHighlightItemAtIndexPath:(NSIndexPath *)indexPath{
NSLog(@"Highlighted");
[[cells objectAtIndex:indexPath.row] shrinkCell:YES];
}
这是来自cell.m
内部的代码-(void)shrinkCell:(BOOL)shrink{
NSLog(@"Shrink");
if (shrink) {
[UIView animateWithDuration:1.0
delay:0.5
options: UIViewAnimationOptionCurveEaseIn
animations:^{
self.bg.frame = CGRectOffset(self.bg.frame, 100, 100);
}
completion:nil];
}
}
所以只是重申一下。细胞确实在移动,它只是没有动画。有什么想法吗? 谢谢!