gpt4 book ai didi

cocoa - NSTextField 动画

转载 作者:行者123 更新时间:2023-12-03 17:22:30 27 4
gpt4 key购买 nike

我正在尝试使用 NSTextField 制作一个简单的动画

   - (void)bounceTimeLabel
{
// Create a key frame animation
CAKeyframeAnimation *bounce =
[CAKeyframeAnimation animationWithKeyPath:@"transform"];

// Create the values it will pass through
CATransform3D forward = CATransform3DMakeScale(1.3, 1.3, 1);
CATransform3D back = CATransform3DMakeScale(0.7, 0.7, 1);
CATransform3D forward2 = CATransform3DMakeScale(1.2, 1.2, 1);
CATransform3D back2 = CATransform3DMakeScale(0.9, 0.9, 1);
[bounce setValues:[NSArray arrayWithObjects:
[NSValue valueWithCATransform3D:CATransform3DIdentity],
[NSValue valueWithCATransform3D:forward],
[NSValue valueWithCATransform3D:back],
[NSValue valueWithCATransform3D:forward2],
[NSValue valueWithCATransform3D:back2],
[NSValue valueWithCATransform3D:CATransform3DIdentity],
nil]];
// Set the duration
[bounce setDuration:0.6];

// Animate the layer

NSLog(@"The layer is %@", [[self testTextField] layer]);

if (![self testTextField]) {
NSLog(@"Textfeild is nil");
} else {
NSLog(@"Testfield exists and is of type: %@", [[self testTextField] class]);
}


[[[self testTextField] layer] addAnimation:bounce
forKey:@"bounceAnimation"];



}

当我运行此命令时,什么也没有发生,此外,当我将图层发送到 NSTextField 实例时,它根据 NSlog 语句返回 null。这段代码来自使用 UILabel 而不是 NSTextField 的 iOS 示例...这可能是问题所在吗?

我的输出是

2013-09-08 07:12:17.314 分配器[646:303] 该层是(空)2013-09-08 07:12:17.315 Allocator[646:303] Testfield 存在且类型为:NSTextField

最佳答案

找到这个SO Answer并意识到我必须为 View 设置 setWantsLayer:YES ,所以我添加了

[[self testTextField] setWantsLayer:YES];

从Nib唤醒,一切正常

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

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