cocoa – NSView中的Autolayout NSImageView – 规模大小.以编程方式设置NSLayoutConstraint

cocoa – NSView中的Autolayout NSImageView – 规模大小.以编程方式设置NSLayoutConstraint,第1张

概述我在IB中设置的NSView中有一个NS ImageView. NS ImageView与NSView的大小完全相同. 一切正常,NSImageView在调整窗口大小时与NSView具有相同的大小. 但是,现在我已经添加了一个动画(从A移动到B)到NSImageView,这将搞乱在IB中设置的约束.所以我必须以编程方式执行此 *** 作. 我怎样才能以编程方式设置NSLayoutConstraint让我的 我在IB中设置的NSVIEw中有一个NS ImageVIEw. NS ImageVIEw与NSVIEw的大小完全相同.

一切正常,NSImageVIEw在调整窗口大小时与NSVIEw具有相同的大小.

但是,现在我已经添加了一个动画(从A移动到B)到NSImageVIEw,这将搞乱在IB中设置的约束.所以我必须以编程方式执行此 *** 作.

我怎样才能以编程方式设置NSLayoutConstraint让我的NSImageVIEw与我的NSImageVIEw(超级视图)具有相同的大小?

更新:

只是为了给你们一些更多信息.我的应用程序使用拆分视图(三个视图)而不是在IB中添加NSImageVIEw我现在以编程方式添加它.我将我的新视图(可以扩展到它的父视图)添加到拆分视图中的第三个视图.

您认为拆分视图是否会导致这些问题?

更新2:

好的,我更接近解决这个问题.我从视图中删除了NSImageVIEw,并添加了一个NSVIEw. NSVIEw缩放得很好,但是一旦我添加了NSImageVIEw,它就会停止工作,因为在调整窗口大小后NSImageVIEw将无法扩展.

换句话说,问题在于NSImageVIEw本身.调整窗口大小后它不会缩放…

解决了

我通过使用pdf VIEw而不是图像视图解决了它(这是我想要显示的pdf).我在pdf视图上将autoScales属性设置为YES.

解决方法 我假设您已经在下面的示例中引用了视图:

NSVIEw * parentVIEw;NSImageVIEw * imageVIEw;[imageVIEw setTranslatesautoresizingMaskIntoConstraints:NO]; //required to opt-in to autolayout[parentVIEw addSubvIEw:imageVIEw]; //SubvIEw must exist before adding constraint. NSDictionary * vIEws = NSDictionaryOfVariableBindings(imageVIEw);[parentVIEw addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[imageVIEw]|"                                                                   options:0                                                                   metrics:nil                                                                     vIEws:vIEws]];[parentVIEw addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[imageVIEw]|"                                                                   options:0                                                                   metrics:nil                                                                     vIEws:vIEws]];
总结

以上是内存溢出为你收集整理的cocoa – NSView中的Autolayout NSImageView – 规模大小.以编程方式设置NSLayoutConstraint全部内容,希望文章能够帮你解决cocoa – NSView中的Autolayout NSImageView – 规模大小.以编程方式设置NSLayoutConstraint所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1001224.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存