首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何像ios中那样使用动画来使流布局无效?

如何像ios中那样使用动画来使流布局无效?
EN

Stack Overflow用户
提问于 2019-05-29 21:35:46
回答 1查看 159关注 0票数 1

我正在用Xcode为Mojave OSX做一个应用程序。

我想调整一个collectionview的大小和项目的位置。目前我调用了invalidateLayout()方法,但它重新计算并设置了没有动画的大小和位置。

在GIF你可以看到什么是当前的行为,我需要的最后一个项目去第二个row,在动画的方式。

为此,我尝试覆盖NSCollectionViewFlowLayout的此方法

代码语言:javascript
复制
  open override func prepare(forAnimatedBoundsChange oldBounds: NSRect){


    }

    open override func finalizeAnimatedBoundsChange() {

    }

但是这些函数从来不会被调用,我也不知道我需要什么代码来激活这个转换。

EN

回答 1

Stack Overflow用户

发布于 2019-05-31 20:18:01

(从问题移动到答案。)

您可以覆盖viewController的viewDidLayout (或将观察者指定给框架视图)并执行以下操作:

代码语言:javascript
复制
 collectionView.animator().performBatchUpdates(nil)

这将使用动画重新加载collectionviewLayout。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56361909

复制
相关文章

相似问题

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