嗨,当用户向下滚动时,如果用户滚动到顶部,则将为表格视图单元设置动画,通常将不显示动画。

-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cells forRowAtIndexPath:(NSIndexPath *)indexPath{
    cells.alpha = 0.0;
    [UIView animateWithDuration:0.4 animations:^{
        cells.alpha = 1.0;
    }];
}

我尝试过这样,但是动画一直在发生

最佳答案

使用布尔属性“ isAnimated ”创建一个自定义单元格。默认情况下,“ isAnimated ”的值为“ NO ”。

并在willDisplayCell:(UITableViewCell *)cell方法中进行代码更改。

-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{
//Typecast UITableViewCell to CustomCell. ex: CustomCell *objCell = (CustomCell *)cell
// check isAnimated or not
   if(cell.isAnimated) return;
   cell.alpha = 0.0;
   [UIView animateWithDuration:0.4 animations:^{
      cell.alpha = 1.0;
      cell.isAnimated = YES;
   }];
}

这里的单元格引用是自定义单元格引用。我希望这段代码对您有用

关于ios - iOS-TableView willDisplayCell动画仅在用户向下滚动到顶部时发生,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40337028/

10-10 03:55