我的uitableview中的uittableviewcell中有一个uiimageview。我想要完成的是使用计时器旋转每个单元格的所有uiimageview。我知道nstimer和旋转概念是如何进行的,但我不知道如何在UITableView中旋转EACH单元格中的所有图像。有没有办法访问所有uitableviewcells的这些属性?
希望这不会令人困惑,如果它在这里是一个简单的例子: 举例来说,我的uitableview中有5个单元格。 5个细胞中的每一个都有一个uiimageview,因为我的细胞是由我自己制作的,并且有自己的类。我如何旋转所有5个uiimageviews?
感谢您的帮助,
凯文
答案 0 :(得分:2)
在你的计时器回调函数中你想做这样的事情。
NSArray* cellArray = [yourTableView visibleCells];
for (UITableViewCell* cell in cellArray)
{
// do your cell by cell rotation here
}
要在为无限动画创建单元格时执行此操作,可以使用以下代码。请记住,如果您正在缓存单元格,那么您只需要在创建单元格时执行此操作,而不是在缓存的单元格上执行此操作。
[UIView beginAnimations:@"looping animation" context:nil];
[UIView setAnimationRepeatCount:0]; // 0 is infinite
[UIView setAnimationDuration:3];
// other animation options here if you'd like, and the duration can be anything, not just 3.
[UIView animateWithDuration:3 delay:0 options:UIViewAnimationOptionRepeat animations: ^{
// do your rotation stuff on your image, in this block, for the cell you will be returning.
} completion:nil];
[UIView commitAnimations];
答案 1 :(得分:0)
使用动画计时器不是最佳方法。
如果您坚持,我建议您只需在表格视图中枚举可见单元格(使用visibleCells tableview方法),并在每个单元格上执行旋转操作。
答案 2 :(得分:0)
控制动画流的UIView的某些方法怎么样?您可以重复旋转动画。