从我发现的帖子看来,这似乎应该可行,但我无法获取我的运行时属性。我正在使用Xcode 4.2.1为OSX 10.7开发。这是IB中的设置:
这是我的代码:
#import "BILAugmentedScrollView.h"
@implementation BILAugmentedScrollView {
BOOL _ignoreScrollWheel;
}
@synthesize ignoreScrollWheel = _ignoreScrollWheel;
- (void)scrollWheel:(NSEvent *)theEvent {
NSLog(@"scroll ignore = %@", [NSNumber numberWithBool:self.ignoreScrollWheel]);
if (self.ignoreScrollWheel)
[self.nextResponder scrollWheel:theEvent];
else
[super scrollWheel:theEvent];
}
我的输出是这样的:[7411:707] scroll ignore = 0
有什么想法吗? 感谢
答案 0 :(得分:2)
我在其他地方读到使用自定义initWithCoder实现时属性不起作用。
(另外,赞成使用3个字母的“命名空间”前缀,正如Apple(相当默默地)建议做的那样。我有点担心特别是Cocoa旧计时器一直忽略这个规则并继续使用2仅限字母。)
答案 1 :(得分:0)
经过一些实验,问题似乎与这个对象(“BILAugmentedScrollView”)在NSCollectionView中使用的事实有关:当它独立时,改变IB中的属性就可以了。我不知道为什么会出现问题,因为对象的每个实例都是由集合视图从nib加载的,但确实如此。