问题标签 [nsanimation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cocoa - 如何用动画实现 NSTrackingArea 的 mouseEntered/Exited?
我想实现一个功能,当用户将鼠标悬停在特定区域上时,新视图会出现类似抽屉的动画。而且,当用户离开特定区域时,抽屉应该以动画形式消失。这正是您在 OS X 中将鼠标悬停在屏幕底部时所看到的,其中 Dock 会随着动画的出现和消失。
但是,如果我用动画实现该功能,则在动画完成之前重新进入特定区域时,它无法正常工作mouseExited:
。这是我的代码:
在这段代码中,我drawerView
通过改变它的x
位置来制作动画。但是,正如我所说,当您进入跟踪区域然后离开跟踪区域时,抽屉可以正常工作。但是,如果在离开动画完全完成之前重新进入跟踪区域,则情况并非如此。
当然,如果我将动画持续时间设置得更短,例如0.1
,这种情况很少发生。但我想用动画移动视图。
我想要做的是让drawerView
start 再次出现,即使视图还没有完全消失。有什么练习可以做到吗?
macos - NSAnimation 移除按钮背景颜色
我正在开发一个 Mac 应用程序。我正在尝试做一个简单的动画,使 NSButton 向下移动。动画效果非常好,但是当我这样做时,我的 NSButton 的背景颜色由于某种原因消失了。这是我的代码:
按钮下移动画:
下移动画后的按钮:
更新 1
为了清楚起见,我没有在按钮中使用背景图像。我正在使用我在 viewDidLoad 方法中设置的背景 NSColor,如下所示:
macos - CGAffineTransformMakeScale 不工作 - OS X - 可可
我有一个正在开发的简单 Mac 应用程序。我希望能够在 NSButton 上应用变换并使其更大。其大小的两倍。但是我的代码不起作用,它只是将按钮滑到一个角落。有谁知道出了什么问题?
更新 1
我尝试了以下,但它没有做任何事情:(
更新 2
这是我的代码 sudo,希望这会有所帮助:
我的头文件(.h)文件:
我的实现(.m)文件:
我也没有用于Auto Layout
我的 UI 文件。
谢谢,丹。
objective-c - 使用 NSAnimation 使用自动布局从外部视图移动 NSView
我在我的项目中使用自动布局,并在按下按钮时在“平铺视图”上滑动“详细视图”。
“平铺视图”与顶部、底部、左侧和右侧对齐。“详细视图”与中心 x、y 对齐且宽度/高度相等。
我让动画工作,但我不得不使用两种不同的方法:
1)这是我首选的动画方法,在“平铺视图”上效果很好
2) 由于上述动画不适用于“详细视图”,因此我使用了不同类型的动画。(我为 centerX 约束创建了一个出口,名为 _detailedCenterXConstraint)
这种方法的问题是动画彼此不匹配。我尝试在 (2) 中使用自定义 CAMediaTimingFunction 来匹配 (1) 中的动画时间,但似乎我没有正确使用它。
CAKeyframeAnimation (1) 不能在我的“详细视图”上工作是否有原因?
或者有没有办法匹配两种方法之间的动画时间?
swift - NSAnimation 不适用于 NSTextField 颜色
我想使用动画设置 NSTextField 的文本颜色,我尝试了以下代码,但它不起作用。它会立即更改颜色,而不会为颜色过渡设置动画。我如何解决它?
objective-c - menuitem 视图的动画出现闪烁
flash 动画 我将 CalendarViewController 的视图设置为 menuitem.view,当触摸 menuitem.view 的底部时,menuitem.view 将开始动画,但我发现动画出现闪烁。我该怎么做才能使动画变得更加流畅。
}
cocoa - 目标 c 中的动画过渡
如何给NSView动画?ios中用于动画的函数如下。
我想在 mac os 中使用相同的功能来制作动画。那么如何在给定参数的情况下为 mac os x 使用这个函数呢?
cocoa - 使用 NSView.layoutSubtreeIfNeeded() 动画自动布局约束在 macOS High Sierra 上不起作用
我有一个基本的 Mac 应用程序,其视图动画通过自动布局完成:
- 我在当前视图的右侧添加了一个新视图
- 我更新了约束,以便新视图最终填充窗口
→ 动画将使它看起来好像视图从右侧滑入。
动画自动布局更改的推荐方法是:
- 更新约束
- 利用
NSAnimationContext.runAnimationGroup()
- 设置
allowsImplicitAnimation
在true
动画块内 view.layoutSubtreeIfNeeded()
在动画块内调用
我遵循了这个建议,在 macOS Sierra 上一切正常,但在 macOS High Sierra 上,动画不再发生。相反,视图显示在其最终位置,没有动画。
我找到了一种解决方法:我使用DispatchQueue.main.async
. 但是,这似乎是一个 hack,我想知道这里是否还缺少其他东西。
这是我的实际代码:
macos - 如何使用曲线为 NSView 设置动画
我知道如何NSView
使用 为对象设置动画+[NSAnimationContext runAnimationGroup:completionHandler:]
,但我看不到在这种类型的动画上设置动画曲线的方法。我看到它NSAnimation
有一个包含NSAnimationCurve
参数的 init 方法,但我无法弄清楚如何使用此方法指定动画期间实际发生的情况。的文档NSAnimation
真的很难理解,我找不到任何示例。因此,如果有人可以解释我如何向NSAnimationContext
动画添加曲线或在动画中指定NSAnimation
动画,那将非常有帮助。提前致谢!
swift - 如何快速实现 NSAnimationEffect
NSTableView
当我通过将项目拖出窗口来从项目中删除项目时,我正在尝试播放动画。
根据文档,它通常使用。NSAnimationEffect
.
这些效果用于指示从集合(例如工具栏)中删除了一个项目,而不删除基础数据。参见 NSShowAnimationEffect( : : : : : :)。
但我不确定如何使用它。