gpt4 book ai didi

iphone - 为 UITableViewCell 的飞行设置动画

转载 作者:行者123 更新时间:2023-11-29 03:38:22 24 4
gpt4 key购买 nike

当一个 tableview 单元格被触摸时,我希望单元格的文本飞到一个新的位置。但这似乎不起作用。请指教这里出了什么问题。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[self.tableView1 deselectRowAtIndexPath:indexPath animated:YES];
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
CGRect cellRect = [cell.superview convertRect:cell.frame toView:self.view];
// The cell should be shown in table as well, so create a new cell
UITableViewCell *view1 = [[UITableViewCell alloc] initWithFrame:cellRect];
[self.view addSubview:view1];
[UIView animateWithDuration:0.5
delay:0
options: UIViewAnimationCurveEaseOut
animations:^{
view1.frame = CGRectMake(10, 10, 0, 0);
}
completion:^(BOOL finished){
NSLog(@"Done!");
[view1 removeFromSuperview];
[self songAddedToQ:indexPath];
}];
}

最佳答案

好吧,这就是我解决它的方法。

-(UIImage*) returnCellImage:(UITableViewCell*)cell
{
UIGraphicsBeginImageContext(cell.frame.size);
CGContextRef context = UIGraphicsGetCurrentContext();
[cell.layer renderInContext:context];
UIImage *screenShot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return screenShot;
}


- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[self.tableView1 deselectRowAtIndexPath:indexPath animated:YES];
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
UIImage *image = [self returnCellImage:cell];
CGRect cellRect = [cell.superview convertRect:cell.frame toView:self.view];
UIImageView *view1 = [[UIImageView alloc] initWithFrame:cellRect];
[view1 setImage:image];
[self.view addSubview:view1];
[UIView animateWithDuration:0.5
delay:0
options: UIViewAnimationCurveEaseOut
animations:^{
view1.frame = CGRectMake(10,10, 0, 0);
}
completion:^(BOOL finished){
[view1 removeFromSuperview];
}];

}

关于iphone - 为 UITableViewCell 的飞行设置动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18818576/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com