如何解决使用UIViewAnimation旋转UITableViewCell的UIImageView我的应用程序挂起!!
|| 我在将左imageView设置为图像的表中有此UITableViewCell。现在,我想要的是在用户选择单元格(别名行)时连续旋转此图像。我可以为单元格imageView设置动画,以便旋转,但是一旦我这样做,应用程序就会停止响应用户输入。换句话说,应用程序挂起并且图像按原样旋转。以下是相关的代码段。 (void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { ... [NSThread detachNewThreadSelector:@selector(rotateImage)toTarget:self withObject:nil]; .... } (无效)rotateImage { UITableViewCell * selectedCell = [self.tableView cellForRowAtIndexPath:[self.tableView indexPathForSelectedRow]]; [UIView beginAnimations:@ \“循环动画\”上下文:无]; //如果需要的话,这里还有其他动画选项,持续时间可以是任意值,而不仅仅是3。 [UIView animateWithDuration:10延迟:0选项:UIViewAnimationOption重复动画:^ { //在此块中,对要返回的单元格在图像上进行旋转。 selectedCell.imageView.transform = CGAffineTransformMakeRotation(kDegreesToRadians(90)); }完成:无]; [UIView commitAnimations]; } 如果我在NSThread代码行中添加注释,则应用程序不会挂起,因此基本上我在动画代码中做错了一些事情,只是使应用程序进入了挂起状态。 请帮忙!! TIA解决方法
块动画的(讨厌)默认设置是禁用用户交互。尝试这个:
[UIView animateWithDuration:10 delay:0
options:UIViewAnimationOptionRepeat|UIViewAnimationOptionAllowUserInteraction
animations:^{
selectedCell.imageView.transform = CGAffineTransformMakeRotation(M_PI);
}
completion:NULL];
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。