macOS 开发-NSView
Posted YxxxHao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了macOS 开发-NSView相关的知识,希望对你有一定的参考价值。
NSView
是用于应用程序中渲染、打印以及处理事件的基础容器。
概要
通常我们不需要直接使用NSView
对象,而是使用其派生的对象或实现的子类并覆盖其方法来实现所需的行为。NSView
(或其子类)的实例通常称为视图对象,或简称为视图。
视图可以处理应用程序的展示内容及其交互。视图对象定义了一个矩形区域,用于绘制和接收鼠标事件。视图还可以处理其他琐事,包括拖动图标以及与类一起使用以支持有效的滚动。
NSView
该类的大多数功能都是由AppKit自动调用的。除非您NSView
在运行时实现视图层次结构的具体子类或与视图层次结构的内容紧密联系,否则您无需了解此类的接口。对于任何视图,可以按原样使用许多方法。通常使用以下方法。
frame
返回视图的位置和大小。bounds
返回视图的内部原点和大小。needsDisplay
视图是否需要重绘对象。window
返回NSWindow
包含该NSView
对象的对象。draw(_:)
绘制视频对象(所有子类都必须实现此方法,但是很少显式调用它)。
基础功能
创建实例
常用api:
//初始化对象
init(frame: NSRect)
// 将视图恢复到初始状态,以便可以重用
func prepareForReuse()
以上是关于macOS 开发-NSView的主要内容,如果未能解决你的问题,请参考以下文章
如何在 macOS 上以编程方式在 Swift 中添加 NSView [重复]
使用NSView.layoutSubtreeIfNeeded()动画自动布局约束不适用于macOS High Sierra