InterfaceBuilderのウィンドウにドラッグしたカスタムビューをサブクラス化しました。マウスがビューの境界に入ると、ビューの高さを変更したいと思います。私の問題は、高さの変化が下向きではなく上向きであるということです。ビューの座標をで反転させてみ(BOOL)isFlipped
ましたが、高さの変化の方向には影響しません。下方向の高さを変更する方法について何か助けはありますか?
#import "ViewA.h"
@implementation ViewA
- (id)initWithFrame:(NSRect)frame
{
self = [super initWithFrame:frame];
if (self) {
NSTrackingArea *trackingArea = [[NSTrackingArea alloc] initWithRect:[self bounds]
options:(NSTrackingMouseEnteredAndExited|NSTrackingActiveAlways)
owner:self
userInfo:nil];
[self addTrackingArea:trackingArea];
}
return self;
}
- (void)drawRect:(NSRect)dirtyRect
{
[[NSColor redColor] setFill];
NSRectFill(dirtyRect);
}
- (BOOL)isFlipped {
return YES;
}
- (void)mouseEntered:(NSEvent *)theEvent {
NSRect rect = self.frame;
rect.size.height = 120;
self.frame = rect;
}
- (void)mouseExited:(NSEvent *)theEvent {
NSRect rect = self.frame;
rect.size.height = 90;
self.frame = rect;
}
@end