开发者

NSTextView background not resizing appropriately

开发者 https://www.devze.com 2023-03-24 15:01 出处:网络
I have an NSTextView inside an NSScrollView.The scroll view has the auto resize masks for height and width, so 开发者_开发技巧it changes size with the window it\'s in.

I have an NSTextView inside an NSScrollView. The scroll view has the auto resize masks for height and width, so 开发者_开发技巧it changes size with the window it's in.

The text view is set up much in the way the apple documentation recommends here.

But no matter what settings I put on the text view, I cannot get the background color to resize along with the scroll view.

Here's a picture of what I'm dealing with:

NSTextView background not resizing appropriately

The width works, but not the height.

Here's my setup code for the textview as it is for this picture:

NSTextView *view = [[NSTextView alloc] initWithFrame:NSMakeRect(0, 0, scrollview.contentSize.width, scrollview.contentSize.height) textContainer:textContainer];
[view setMinSize:NSMakeSize(0.0, scrollview.contentSize.height)];
[view setMaxSize:NSMakeSize(FLT_MAX, FLT_MAX)];
[view setVerticallyResizable:YES];
[view setHorizontallyResizable:NO];
[view setAllowsDocumentBackgroundColorChange:YES];
[view setDrawsBackground:YES];
[view setAutomaticLinkDetectionEnabled:YES];
[view setAutoresizingMask:NSViewWidthSizable];


The white background colour isn’t that of the NSTextView, but rather that of its enclosing NSScrollView.

To change it, either select the NSScrollView in Interface Builder/Xcode 4. Or, to do it programmatically, use -[NSView encosingScrollView]:

NSScrollView *scrollView = [textView enclosingScrollView];
[scrollView setBackgroundColor:[NSColor blackColor]];
0

精彩评论

暂无评论...
验证码 换一张
取 消