将子视图添加到 NSView

Posted

技术标签:

【中文标题】将子视图添加到 NSView【英文标题】:Adding subviews to NSView 【发布时间】:2013-01-17 05:07:10 【问题描述】:

我想动态地。我将 NSView 的坐标设置为:

NSView *tmpView = [[NSView alloc]initWithFrame:self.view.frame];

我想将动态数量的 imageViews 添加到 tmpView。我的 imageView 是:

NSImageView *tmpImageView = [[NSImageView alloc]initWithFrame:CGRectMake(xAxis, yAxis, 320, 180)];

这里,xAxis 和 yAxis 用于动态定位 imageView。

当我将图像视图添加到 NSView 时:

[tmpView addSubView:tmpImageView]

它从左下角添加 imageView,但我希望它从左上角开始。请帮助我如何将子视图相应地添加到 NSView。

提前致谢

【问题讨论】:

【参考方案1】:

最简单的方法是将视图子类化并覆盖-isFlipped 以返回YES。请参阅the NSView documentation,其中写道:

-(BOOL)被翻转 如果接收器使用翻转的绘图坐标,则返回 YES,如果使用原生则返回 NO 坐标。

【讨论】:

实际上我在重写 NSVIew 函数时遇到了问题,现在它已经完成了。谢谢

以上是关于将子视图添加到 NSView的主要内容,如果未能解决你的问题,请参考以下文章

添加子视图到 NSView 显示,但不能删除

如何以编程方式将视图添加到 NSWindow(或 NSView)?

iOS - 将子视图添加到子视图控制器视图

仅将子视图添加到当前视图的 UINavigationBar

将子视图添加到视图控制器

将子视图添加到 UICollectionViewCell 子类?