首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带有绑定的NSTableView的行动画

带有绑定的NSTableView的行动画
EN

Stack Overflow用户
提问于 2016-03-15 11:03:54
回答 1查看 553关注 0票数 4

我有一个NSTableView,它使用数组控制器绑定到动态数组,它工作得很好。

现在我意识到,当我在数组中添加/插入一个元素时,行将直接添加到表视图中,而不需要行插入动画。当我经常向数组中添加元素时,由于缺少动画,表视图看起来很奇怪。

当我插入或移除动态数组的一个元素时,是否有任何“官方”的方法或方法来获得行动画?

EN

回答 1

Stack Overflow用户

发布于 2022-01-18 15:51:10

我知道这个问题很古老,但是当我尝试在使用绑定的NSTableView中动画插入时,我遇到了一个类似的问题。这就是我最后所做的:

  1. 从tableview内容中解除数组控制器的绑定。
  2. 将新对象插入数组控制器(不首先解除绑定,这将自动将其插入到没有动画的表视图中)。
  3. 动画化表视图插入。
  4. 将数组控制器重新绑定到tableview内容。
代码语言:javascript
运行
复制
    // insertIndex and objectToInsert established earlier
    [self.myTableView unbind:NSContentBinding];
    [self.myArrayController insertObject:objectToInsert atArrangedObjectIndex:insertIndex];
    [NSAnimationContext runAnimationGroup:^(NSAnimationContext * _Nonnull context) {
        [self.myTableView insertRowsAtIndexes:[NSIndexSet indexSetWithIndex:insertIndex] withAnimation:NSTableViewAnimationSlideDown];
    } completionHandler:^{
        [self.myTableView bind:NSContentBinding toObject:self.myArrayController withKeyPath:@"arrangedObjects" options:@{NSRaisesForNotApplicableKeysBindingOption : @(YES)}];
    }];
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36009431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档