0

I am currently having trouble with creating an animated NSTextField sub-classes.

#import <QuartzCore/QuartzCore.h>
#import "QuartzCore/CAMediaTimingFunction.h"
#import "CMFadingTextField.h"

@implementation FadingTextField

-(void)setAnimatedStringValue:(NSString *)string
{
    [NSAnimationContext runAnimationGroup:^(NSAnimationContext *context) {
        [context setDuration:1.0];
        [context setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut]];
        [self.animator setAlphaValue:0.0];
    }
    completionHandler:^{
        [self setStringValue:string];
        [NSAnimationContext runAnimationGroup:^(NSAnimationContext *context) {
            [context setDuration:1.0];
            [context setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn]];
            [self.animator setAlphaValue:1.0];
        }
        completionHandler:^{}];
    }];
}

@end

When I compile this, I am getting this error:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_CAMediaTimingFunction", referenced from:
      objc-class-ref in FadingTextField.o
  "_kCAMediaTimingFunctionEaseIn", referenced from:
      ___44-[FadingTextField setAnimatedStringValue:]_block_invoke_2 in FadingTextField.o
  "_kCAMediaTimingFunctionEaseOut", referenced from:
      ___44-[FadingTextField setAnimatedStringValue:]_block_invoke in FadingTextField.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

I already have QuartzCore imported, so I do not understand what the issue is.

user1927638
  • 1,133
  • 20
  • 42

1 Answers1

-1

Choose your project -> Targets -> Build settings -> Architectures -> Valid architectures -> Try to delete flag 'arm64'.