我试图弄清楚NSScrollView的内容放大是如何工作的:
我有一个NSScrollView,其中我试图添加一个包含NSTextField的NSView。
我使用文本字段创建NSView,并将其添加到NSScrollView文档视图(scrollView.documentView addSubview:.),因此我最终得到以下内容:
NSScrollView.documentView -> NSView -> NSTextField
当NSScrollView上的放大率发生变化时,NSView会自动调整大小,NSTextField的边界/单击区域也会被调整大小,但实际的NSTextField不会调整大小:(这些红色的轮廓是光标在鼠标移动时会改变的地方/我必须单击以开始编辑的位置,所以这实际上是在适当地缩放)



如果我跳过NSView,直接将NSTextField添加到NSSCrollView.documentView中,就会得到类似的“效果”,实际的文本/文本字段将缩放,而不是焦点环:

它看起来像任何“直接低于”的NSScrollView.documentView将适当地缩放,而不是它的子视图?
我试着设置自动调整掩码和自动调整大小的子视图->在任何地方都是正确的,但是没有效果。
我做错了什么?
谢谢你的帮助!
发布于 2014-01-07 13:10:21
我不认为你做错了什么,它只是坏了。可悲的是,大多数小部件不会以一种正常的方式向上或向下扩展。它们是非常古老的类,里面有大量的黑客,而scaling是最近才增加的。
如果您正在实现自己的视图,缩放是很好的,但是对于小部件来说并不是很有用。(我甚至不知道它们是否对所有小部件都有完全可伸缩的art。)
https://stackoverflow.com/questions/20905698
复制相似问题