Question

I added an imagewell via interface builder, set an image, then ran and all is well. (the image is displayed).

However, if I change the custom class to one of my own (NSImageView subclass), the image is no longer displayed. This is a bare class with nothing added. Any reason why this wouldn't work?

I then tried to manually set an image in the initWithFrame method:

    [self setImage:[NSImage imageNamed:@"image.png"]];
    [self setImageAlignment:NSImageAlignCenter];

    NSLog(@"image is valid? %@", [[self image] isValid] ? @"yes" : @"no");

But this too did not work. No errors, just no image shown.

Any ideas as to what might be my mistake?

Was it helpful?

Solution

Make sure that you call super drawRect inside the drawRect method.

 - (void)drawRect:(NSRect)dirtyRect
 {
     [super drawRect:dirtyRect];
     // Drawing code here.
 }

OTHER TIPS

Check the bindings again, in XIB, Probably you might need to again link ImageView with your New "SubClassImageView"

hope that should solve the problem....

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top