gpt4 book ai didi

ios - UITableViewCell 在 LongPress 上闪烁

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:51:11 27 4
gpt4 key购买 nike

我有一个 UITableView,我正在向它的 UITableViewCell 添加一个 UILongPressGestureRecognizer,如下所示:

// Setup Event-Handling
UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleTableViewCellLongPress:)];

[cell addGestureRecognizer:longPress];

[longPress setDelegate:self];

我希望单元格在触发事件时闪烁,并且我还想禁止标准行为(按下一次时它变成蓝色)。

如何在我的 handleTableViewCellLongPress 方法中执行此操作?

谢谢!

最佳答案

您可以使用链接动画:

- (UITableViewCell *) tableView:(UITableView *)tableView 
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = ...
// remove blue selection
cell.selectionStyle = UITableViewCellSelectionStyleNone;

UILongPressGestureRecognizer *gesture = [[[UILongPressGestureRecognizer alloc]
initWithTarget:self action:@selector(handleTableViewCellLongPress:)] autorelease];
[cell addGestureRecognizer:gesture];

return cell;
}

- (void) handleTableViewCellLongPress:(UILongPressGestureRecognizer *)gesture
{
if (gesture.state != UIGestureRecognizerStateBegan)
return;

UITableViewCell *cell = (UITableViewCell *)gesture.view;
[UIView animateWithDuration:0.1 animations:^{
// hide
cell.alpha = 0.0;
} completion:^(BOOL finished) {
// show after hiding
[UIView animateWithDuration:0.1 animations:^{
cell.alpha = 1.0;
} completion:^(BOOL finished) {

}];
}];
}

关于ios - UITableViewCell 在 LongPress 上闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9632815/

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