添加到superView后,NSView子视图不可见

时间:2013-07-17 05:13:07

标签: objective-c macos cocoa nsview subview

这是我的最后一个窗口enter image description here

我在基本视图中添加了4个子视图(第2张图像中的最后4张)。但不显示视图。在手动调整大小窗口后,子视图显示如下。 enter image description here

如何解决?

2 个答案:

答案 0 :(得分:2)

baseView.needsDisplay = YES;

- 或 -

subview.superview.needsDisplay = YES;

答案 1 :(得分:0)

您可以使用NSScrollView:

    NSScrollView* scrollView = [[NSScrollView alloc] init];
    [scrollView setHasHorizontalScroller: YES];
    [scrollView setHasVerticalScroller: YES];
    self.contentView = [[NSView alloc] initWithFrame: NSMakeRect(0, 0, 1.0e7, 1.0e7)];
    [self.contentView addSubview: [NSImageView ...]];        
    [self.contentView addSubview: [NSImageView ...]];        
    ...
    [scrollView setDocumentView: self.contentView];
    self.view = scrollView;

或使用窗口的最小尺寸。