如何在放大的NSScrollView中修复NSTextView的怪异大小

时间:2019-05-06 12:47:45

标签: xcode cocoa nstextview nsscrollview

我在NSScrollView / NSClipView内部有一个NSTextView,这是通常的设置。当我用[NSScrollView setMagnification:...]放大滚动视图并调整窗口大小时,无论我拉伸还是收缩窗口,文本视图框架的宽度都会不断变大。

如果未放大滚动视图,则文本视图将正常运行。我曾尝试删除约束并禁用子视图自动调整大小,但没有任何帮助。每当我设置任何放大倍率时,每次调用调整大小时,文本视图的大小都会改变。如果放大倍数小于1,则会缩小。

由于我已设置textContainer.widthTracksTextView = false;

,因此TextContainer中的任何错误也不应使其范围扩大

我试图通过设置inset来将textContainer居中放置在我的NSTextView中,但是随着大小的变化,它是不可能的。我已经检查了我的代码,没有什么可以调整它的大小。这是一个错误还是setMagnify:导致LayoutManager中的约束或其他数学问题?

1 个答案:

答案 0 :(得分:0)

对于任何试图弄清楚这一点的人: 这是由放大视图或其任何子视图的最小宽度限制引起的。好像是个错误,因为我无法将注意力集中在预期的行为上。

只需删除>=约束,并在需要时做一些事情来限制运行时的大小。