gpt4 book ai didi

cocoa - 软滚动动画 NSScrollViewscrollToPoint :

转载 作者:行者123 更新时间:2023-12-03 16:03:26 24 4
gpt4 key购买 nike

我想在简单的 UI 中的过渡之间创建软动画:

first slide second slide third slide

移动的 View

view

当调用 scrollToPoint: 将 View 移动到该过渡点时,不会产生动画效果。我是 Cocoa 编程的新手(iOS 是我的背景)。我不知道如何正确使用 .animator 或 NSAnimationContext。

我还阅读了核心动画指南,但没有找到解决方案。

来源可以通过 Git Hub repository 找到

请帮忙!!!

最佳答案

scrollToPoint 不可设置动画。只有 NSAnimatablePropertyContainer 中的边界和位置等可动画属性才会被动画化。您不需要对 CALayer 执行任何操作:删除 WantsLayer 和 CALayer 内容。然后使用以下代码将其动画化。

- (void)scrollToXPosition:(float)xCoord {
[NSAnimationContext beginGrouping];
[[NSAnimationContext currentContext] setDuration:5.0];
NSClipView* clipView = [_scrollView contentView];
NSPoint newOrigin = [clipView bounds].origin;
newOrigin.x = xCoord;
[[clipView animator] setBoundsOrigin:newOrigin];
[_scrollView reflectScrolledClipView: [_scrollView contentView]]; // may not bee necessary
[NSAnimationContext endGrouping];
}

关于cocoa - 软滚动动画 NSScrollViewscrollToPoint :,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19399242/

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