gpt4 book ai didi

iphone - 当用户滑动删除手势时,UITableCell View 的 subview 会缩小

转载 作者:行者123 更新时间:2023-12-01 19:17:17 27 4
gpt4 key购买 nike

我有一个 UITableView,其单元格中有自定义 subview 。当用户在单元格上进行滑动删除手势时,我的 View 会缩小一会儿,同时出现“删除”按钮。

据我了解,这是由于出现“删除”按钮并且我的 subview 需要变短时发生的一些系统动画。我将 subview 的 contentMode 设置为 UIViewContentModeRedraw ,动画完成后一切看起来都很好。

我查看了它在内置邮件应用程序中的工作原理,那里一切都很好。

我怎样才能避免这种缩小?是否可以将此动画更改为“淡出”之类的?或者我可以在这个动画开始时让我的 subview 立即变短吗?

解决方案:

最后,我通过以下方式子类化 UITableViewCell 并覆盖 layoutSubviews 方法找到了解决方案:

- (void)layoutSubviews
{
[super layoutSubviews];

UIView *view = [self.contentView viewWithTag:101];
CATransition *animation = [CATransition animation];
animation.duration = 0.2f;
animation.type = kCATransitionFade;
[view.layer removeAllAnimations];
[view.layer addAnimation: animation forKey:@"deletingFade"];
}

谢谢!

最佳答案

您可以使用此委托(delegate)方法:

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = (UITableViewCell *)[tableView cellForRowAtIndexPath:indexPath];
// do what ever you need to change in your cell
return YES;
}

(或者)

您可以在 TableViewCell 中使用以下方法:
- (void)willTransitionToState:(UITableViewCellStateMask)state
- (void)didTransitionToState:(UITableViewCellStateMask)state

You can change according to state if you are using customCell.

关于iphone - 当用户滑动删除手势时,UITableCell View 的 subview 会缩小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12495884/

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